From: Mark Young Date: Fri, 3 Feb 2017 23:27:42 +0000 (-0700) Subject: loader: gh1449 - Fix mem leak on CTS X-Git-Tag: upstream/1.1.92~1648 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9d8b7445333cf528ccf7b40a419c640cb8229f98;p=platform%2Fupstream%2FVulkan-Tools.git loader: gh1449 - Fix mem leak on CTS Fix a memory leak in the CTS test which fails randomly during the vkCreateInstance call. Change-Id: Ie72feac730d3854cb2af9e13a3687aa43081bfd5 --- diff --git a/loader/loader.c b/loader/loader.c index 81c37c4..b6adbb1 100644 --- a/loader/loader.c +++ b/loader/loader.c @@ -5046,15 +5046,17 @@ VkResult setupLoaderTermPhysDevs(struct loader_instance *inst) { out: if (VK_SUCCESS != res) { - if (NULL != inst->phys_devs_term) { - // We've encountered an error, so we should free the - // new buffers. + if (NULL != new_phys_devs) { + // We've encountered an error, so we should free the new buffers. for (uint32_t i = 0; i < inst->total_gpu_count; i++) { loader_instance_heap_free(inst, new_phys_devs[i]); } + loader_instance_heap_free(inst, new_phys_devs); + } + if (NULL != inst->phys_devs_term) { loader_instance_heap_free(inst, inst->phys_devs_term); - inst->total_gpu_count = 0; } + inst->total_gpu_count = 0; } else { // Free everything that didn't carry over to the new array of // physical devices. Everything else will have been copied over