Module: Mesa Branch: staging/20.1 Commit: 30d4be2a59e88136efe46645e5345076bb5ca27b URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=30d4be2a59e88136efe46645e5345076bb5ca27b
Author: Vinson Lee <v...@freedesktop.org> Date: Sun Aug 30 17:39:43 2020 -0700 vulkan: Fix memory leaks. Fix warnings reported by Coverity Scan. Resource leak (RESOURCE_LEAK) leaked_storage: Variable info going out of scope leaks the storage it points to. Fixes: 9bc5b2d169d3 ("vulkan: add initial device selection layer. (v6.1)") Signed-off-by: Vinson Lee <v...@freedesktop.org> Reviewed-by: Dave Airlie <airl...@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6509> (cherry picked from commit 004119d5b7d4b1679e6dd691e9ab2ab7d65f8516) --- .pick_status.json | 2 +- src/vulkan/device-select-layer/device_select_layer.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index dadefa75a64..89b0e56764b 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -400,7 +400,7 @@ "description": "vulkan: Fix memory leaks.", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "9bc5b2d169d3a3c9d52fc30987eaba52e3b7dc00" }, diff --git a/src/vulkan/device-select-layer/device_select_layer.c b/src/vulkan/device-select-layer/device_select_layer.c index 7bec8890344..3a5981063c8 100644 --- a/src/vulkan/device-select-layer/device_select_layer.c +++ b/src/vulkan/device-select-layer/device_select_layer.c @@ -137,14 +137,17 @@ static VkResult device_select_CreateInstance(const VkInstanceCreateInfo *pCreate PFN_vkCreateInstance fpCreateInstance = (PFN_vkCreateInstance)info->GetInstanceProcAddr(NULL, "vkCreateInstance"); if (fpCreateInstance == NULL) { + free(info); return VK_ERROR_INITIALIZATION_FAILED; } chain_info->u.pLayerInfo = chain_info->u.pLayerInfo->pNext; VkResult result = fpCreateInstance(pCreateInfo, pAllocator, pInstance); - if (result != VK_SUCCESS) + if (result != VK_SUCCESS) { + free(info); return result; + } for (unsigned i = 0; i < pCreateInfo->enabledExtensionCount; i++) { if (!strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME)) _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit