]> O.S.I.I.S - jp/vkvg.git/commitdiff
fix fontconfig and freetype leaks
authorJean-Philippe Bruyère <jp_bruyere@hotmail.com>
Wed, 22 Jul 2020 16:28:22 +0000 (18:28 +0200)
committerJean-Philippe Bruyère <jp_bruyere@hotmail.com>
Wed, 22 Jul 2020 16:28:22 +0000 (18:28 +0200)
src/vkvg_device.c
src/vkvg_fonts.c
tests/common/vkengine.c
tests/test1.c

index e680890af407907de37400b57b6387ffd0542332..74d0edfb64f4d486cf51f7ad5ca330847faea10e 100644 (file)
@@ -177,6 +177,8 @@ void vkvg_device_destroy (VkvgDevice dev)
        vkFreeCommandBuffers            (dev->vkDev, dev->cmdPool, 1, &dev->cmd);
        vkDestroyCommandPool            (dev->vkDev, dev->cmdPool, NULL);
 
+       vkh_queue_destroy(dev->gQueue);
+
        _destroy_font_cache(dev);
 
        vmaDestroyAllocator (dev->allocator);
index 4e8ffc0e4b1c4350ce1f63d7c5e616af40c5cb0f..e198b9b434ff4eb2c55947a895e1e14c8336aac1 100644 (file)
@@ -161,8 +161,6 @@ void _init_next_line_in_tex_cache (VkvgDevice dev, _vkvg_font_t* f){
 void _destroy_font_cache (VkvgDevice dev){
        _font_cache_t* cache = (_font_cache_t*)dev->fontCache;
 
-       //FcFini();
-
        free (cache->hostBuff);
 
        for (int i = 0; i < cache->fontsCount; ++i) {
@@ -189,6 +187,10 @@ void _destroy_font_cache (VkvgDevice dev){
        //vkFreeCommandBuffers(dev->vkDev,dev->cmdPool, 1, &cache->cmd);
        vkDestroyFence      (dev->vkDev,cache->uploadFence,NULL);
 
+       FT_Done_FreeType(cache->library);
+       FcConfigDestroy(cache->config);
+       FcFini();
+
        free (dev->fontCache);
 
 }
index 6ef5b1eef347f0195e06a7ee941d89251422c301..287e8b72a210f9faf223db57de31a582acaf80e4 100644 (file)
@@ -130,8 +130,8 @@ vk_engine_t* vkengine_create (VkPhysicalDeviceType preferedGPU, VkPresentModeKHR
                                                                   | VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT
                                                                   , VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT
                                                                   | VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT
-                                                                  //| VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT
-                                                                  //| VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT
+                                                                  | VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT
+                                                                  | VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT
                                                                   , NULL);
 #endif
 
index 097d51e4d3003162c636775ebc4c42e76b958877..5fb17bf73f4ca002c7c6321cfb732457984b778b 100644 (file)
@@ -356,7 +356,7 @@ void cairo_tests () {
        cairo_print_arc_neg(ctx);
 
        vkvg_translate(ctx,250,0);
-       //cairo_test_text(ctx);
+       cairo_test_text(ctx);
 
        vkvg_translate(ctx,-500,250);
        cairo_test_curves(ctx);