From 712e3b9d9c049f737494dfe673c6c3872dd0dd90 Mon Sep 17 00:00:00 2001 From: Eric Warmenhoven Date: Tue, 31 Jan 2023 12:13:24 -0800 Subject: [PATCH] Fix vulkan mac libretro crash due to not creating the surface --- libretro/LibretroVulkanContext.cpp | 2 ++ libretro/libretro_vulkan.cpp | 3 +++ 2 files changed, 5 insertions(+) diff --git a/libretro/LibretroVulkanContext.cpp b/libretro/LibretroVulkanContext.cpp index ff9180cecf..c7072df17b 100644 --- a/libretro/LibretroVulkanContext.cpp +++ b/libretro/LibretroVulkanContext.cpp @@ -61,6 +61,8 @@ static bool create_device(retro_vulkan_context *context, VkInstance instance, Vk vk->InitSurface(WINDOWSYSTEM_WIN32, nullptr, nullptr); #elif defined(__ANDROID__) vk->InitSurface(WINDOWSYSTEM_ANDROID, nullptr, nullptr); +#elif defined(VK_USE_PLATFORM_METAL_EXT) + vk->InitSurface(WINDOWSYSTEM_METAL_EXT, nullptr, nullptr); #elif defined(VK_USE_PLATFORM_XLIB_KHR) vk->InitSurface(WINDOWSYSTEM_XLIB, nullptr, nullptr); #elif defined(VK_USE_PLATFORM_XCB_KHR) diff --git a/libretro/libretro_vulkan.cpp b/libretro/libretro_vulkan.cpp index 99fe6ee1ee..8fc3faabd3 100644 --- a/libretro/libretro_vulkan.cpp +++ b/libretro/libretro_vulkan.cpp @@ -355,6 +355,9 @@ VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr_libretro(VkInstan #ifdef __ANDROID__ || !strcmp(pName, "vkCreateAndroidSurfaceKHR") #endif +#ifdef VK_USE_PLATFORM_METAL_EXT + || !strcmp(pName, "vkCreateMetalSurfaceEXT") +#endif #ifdef VK_USE_PLATFORM_XLIB_KHR || !strcmp(pName, "vkCreateXlibSurfaceKHR") #endif