From 50619b9017896f33b5f428f4dad7be303f53a4b6 Mon Sep 17 00:00:00 2001 From: Tobin Ehlis Date: Thu, 2 Jun 2016 12:45:31 -0600 Subject: layers: Update swapchainMap to use unique_ptr --- layers/core_validation.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'layers/core_validation.cpp') diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index 53b416f4..a281d804 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -102,7 +102,7 @@ struct CMD_POOL_INFO { struct devExts { bool wsi_enabled; - unordered_map swapchainMap; + unordered_map> swapchainMap; unordered_map imageToSwapchainMap; }; @@ -299,7 +299,7 @@ SWAPCHAIN_NODE *getSwapchainNode(const layer_data *dev_data, const VkSwapchainKH if (swp_it == dev_data->device_extensions.swapchainMap.end()) { return nullptr; } - return swp_it->second; + return swp_it->second.get(); } // Return swapchain for specified image or else NULL VkSwapchainKHR getSwapchainFromImage(const layer_data *dev_data, const VkImage image) { @@ -9675,9 +9675,8 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateSwapchainKHR(VkDevice device, const VkSwapc VkResult result = dev_data->device_dispatch_table->CreateSwapchainKHR(device, pCreateInfo, pAllocator, pSwapchain); if (VK_SUCCESS == result) { - SWAPCHAIN_NODE *psc_node = new SWAPCHAIN_NODE(pCreateInfo); std::lock_guard lock(global_lock); - dev_data->device_extensions.swapchainMap[*pSwapchain] = psc_node; + dev_data->device_extensions.swapchainMap[*pSwapchain] = unique_ptr(new SWAPCHAIN_NODE(pCreateInfo)); } return result; @@ -9708,7 +9707,6 @@ DestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain, const VkAllocatio dev_data->imageMap.erase(swapchain_image); } } - delete swapchain_data; dev_data->device_extensions.swapchainMap.erase(swapchain); } lock.unlock(); -- cgit v1.2.3