Mesa (master): anv: Ignore descriptor binding flags if bindingCount == 0

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 19 23:59:27 UTC 2019


Module: Mesa
Branch: master
Commit: 2b388c3d0404ab8cc20945b9d4c369c9051c2205
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2b388c3d0404ab8cc20945b9d4c369c9051c2205

Author: Jason Ekstrand <jason at jlekstrand.net>
Date:   Fri Apr 19 14:43:01 2019 -0500

anv: Ignore descriptor binding flags if bindingCount == 0

I missed this on the first go round.  The bindingCount field of
VkDescriptorSetLayoutBindingFlagsCreateInfoEXT is allowed to be zero
which means the flags array is ignored.

Fixes: d6c9bd6e01b4d "anv: Put binding flags in descriptor set layouts"
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>

---

 src/intel/vulkan/anv_descriptor_set.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/intel/vulkan/anv_descriptor_set.c b/src/intel/vulkan/anv_descriptor_set.c
index 1ad89185dd7..da689d285fc 100644
--- a/src/intel/vulkan/anv_descriptor_set.c
+++ b/src/intel/vulkan/anv_descriptor_set.c
@@ -362,8 +362,6 @@ VkResult anv_CreateDescriptorSetLayout(
    const VkDescriptorSetLayoutBindingFlagsCreateInfoEXT *binding_flags_info =
       vk_find_struct_const(pCreateInfo->pNext,
                            DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT);
-   if (binding_flags_info)
-      assert(binding_flags_info->bindingCount == pCreateInfo->bindingCount);
 
    for (uint32_t b = 0; b <= max_binding; b++) {
       const VkDescriptorSetLayoutBinding *binding =
@@ -385,7 +383,8 @@ VkResult anv_CreateDescriptorSetLayout(
       set_layout->binding[b].type = binding->descriptorType;
 #endif
 
-      if (binding_flags_info) {
+      if (binding_flags_info && binding_flags_info->bindingCount > 0) {
+         assert(binding_flags_info->bindingCount == pCreateInfo->bindingCount);
          uint32_t binding_strct_idx = binding - pCreateInfo->pBindings;
          assert(binding_strct_idx < binding_flags_info->bindingCount);
          set_layout->binding[b].flags =




More information about the mesa-commit mailing list