From 9efb8af92de180ea85ee8062ddcd4aee00dbd2c0 Mon Sep 17 00:00:00 2001 From: Petr Kraus Date: Sun, 10 Sep 2017 02:26:33 +0200 Subject: layers: Fix Graphics Pipeline pointers not ignored Some VkGraphicsPipelineCreateInfo pointers must be ignored under some conditions, but were not in the layers. Add relevant tests. Fix tests found broken (using depth or color without attachment in subpass) Change-Id: I3e2a3f61a52c72ce3a11483ff8b031189f4c61c9 --- layers/parameter_validation.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'layers/parameter_validation.h') diff --git a/layers/parameter_validation.h b/layers/parameter_validation.h index 6ef3de2e..b9d153ce 100644 --- a/layers/parameter_validation.h +++ b/layers/parameter_validation.h @@ -25,8 +25,9 @@ #include #include #include -#include +#include #include +#include #include "vulkan/vulkan.h" #include "vk_enum_string_helper.h" @@ -80,6 +81,13 @@ struct layer_data { VkDevice device = VK_NULL_HANDLE; DeviceExtensions extensions; + struct SubpassesUsageStates { + std::unordered_set subpasses_using_color_attachment; + std::unordered_set subpasses_using_depthstencil_attachment; + }; + + std::unordered_map renderpasses_states; + VkLayerDispatchTable dispatch_table = {}; }; -- cgit v1.2.3