From aa79196d38a68f5f848b3e29243095f920b47922 Mon Sep 17 00:00:00 2001 From: Flyinghead Date: Mon, 23 Jan 2023 12:11:43 +0100 Subject: [PATCH] vk: only destroy surface if instance and surface aren't null Don't request Arm debug layer VK_LAYER_ARM_AGA Fix for MINIDUMP-5G --- core/rend/vulkan/vulkan_context.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/rend/vulkan/vulkan_context.cpp b/core/rend/vulkan/vulkan_context.cpp index 0fc4d94ff..e970bd323 100644 --- a/core/rend/vulkan/vulkan_context.cpp +++ b/core/rend/vulkan/vulkan_context.cpp @@ -439,9 +439,8 @@ bool VulkanContext::InitDevice() features.fragmentStoresAndAtomics = true; if (samplerAnisotropy) features.samplerAnisotropy = true; - const char *layers[] = { "VK_LAYER_ARM_AGA" }; device = physicalDevice.createDeviceUnique(vk::DeviceCreateInfo(vk::DeviceCreateFlags(), deviceQueueCreateInfo, - layers, deviceExtensions, &features)); + nullptr, deviceExtensions, &features)); #if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1 VULKAN_HPP_DEFAULT_DISPATCHER.init(*device); @@ -1016,7 +1015,8 @@ void VulkanContext::term() #ifndef USE_SDL surface.reset(); #else - instance->destroySurfaceKHR(surface.release()); + if (instance && surface) + instance->destroySurfaceKHR(surface.release()); #endif pipelineCache.reset(); device.reset();