From 7e711677b9f0a717cedac8c6d9a440e049dff88e Mon Sep 17 00:00:00 2001 From: Mark Lobodzinski Date: Tue, 10 Nov 2015 11:01:32 -0700 Subject: layers: LX190, Image layer doe snot recognize swapchain images Image layer was using helper function limited only to header definitions, ignoring the WSI extension images for image layouts. --- layers/image.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'layers/image.cpp') diff --git a/layers/image.cpp b/layers/image.cpp index 8cf18cba..4c08a833 100644 --- a/layers/image.cpp +++ b/layers/image.cpp @@ -255,6 +255,12 @@ bool is_depth_format(VkFormat format) return result; } +static inline uint32_t validate_VkImageLayoutKHR(VkImageLayout input_value) +{ + return ((validate_VkImageLayout(input_value) == 1) || + (input_value == VK_IMAGE_LAYOUT_PRESENT_SOURCE_KHR)); +} + VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage) { VkBool32 skipCall = VK_FALSE; @@ -312,8 +318,8 @@ VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(VkDevice devic for(uint32_t i = 0; i < pCreateInfo->attachmentCount; ++i) { - if(!validate_VkImageLayout(pCreateInfo->pAttachments[i].initialLayout) || - !validate_VkImageLayout(pCreateInfo->pAttachments[i].finalLayout)) + if(!validate_VkImageLayoutKHR(pCreateInfo->pAttachments[i].initialLayout) || + !validate_VkImageLayoutKHR(pCreateInfo->pAttachments[i].finalLayout)) { std::stringstream ss; ss << "vkCreateRenderPass parameter, VkImageLayout in pCreateInfo->pAttachments[" << i << "], is unrecognized"; -- cgit v1.2.3