loader: Fix 32-bit loader exception when layers enabled for Vulkan apps.
authorMark Young <marky@lunarg.com>
Wed, 27 Jan 2016 19:51:00 +0000 (12:51 -0700)
committerMark Young <marky@lunarg.com>
Thu, 28 Jan 2016 20:34:04 +0000 (13:34 -0700)
The loader_create_device_terminator had an incorrect calling convention.  This
caused the ESP pointer to not get properly restored after the function was
called by a 32-bit application.

loader/loader.c
loader/loader.h

index 9040f3f..1b8fe21 100644 (file)
@@ -2987,7 +2987,7 @@ static VkResult loader_enable_device_layers(
     return err;
 }
 
-VkResult loader_create_device_terminator(
+VKAPI_ATTR VkResult VKAPI_CALL loader_create_device_terminator(
         VkPhysicalDevice                            physicalDevice,
         const VkDeviceCreateInfo*                   pCreateInfo,
         const VkAllocationCallbacks*                pAllocator,
index 6dcc5de..4f253ef 100644 (file)
@@ -427,7 +427,7 @@ VKAPI_ATTR void VKAPI_CALL loader_GetPhysicalDeviceMemoryProperties (
         VkPhysicalDevice physicalDevice,
         VkPhysicalDeviceMemoryProperties * pProperties);
 
-VkResult loader_create_device_terminator(
+VKAPI_ATTR VkResult VKAPI_CALL loader_create_device_terminator(
         VkPhysicalDevice                            physicalDevice,
         const VkDeviceCreateInfo*                   pCreateInfo,
         const VkAllocationCallbacks*                pAllocator,