radv: don't copy buffer descriptors list for samplers
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 25 Feb 2019 14:28:25 +0000 (15:28 +0100)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 26 Feb 2019 10:22:28 +0000 (11:22 +0100)
Sampler descriptors don't have a buffer list.

This fixes some crashes with new CTS
dEQP-VK.binding_model.descriptor_copy.*.sampler_*.

Cc: 18.3 19.0 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_descriptor_set.c

index e6649305961275b6700412a5048e3e6c80b2d3f3..68171b5d244a4c65f8c3b1c4e92ba7a730e0625f 100644 (file)
@@ -969,7 +969,11 @@ void radv_update_descriptor_sets(
                        }
                        src_ptr += src_binding_layout->size / 4;
                        dst_ptr += dst_binding_layout->size / 4;
-                       dst_buffer_list[j] = src_buffer_list[j];
+
+                       if (src_binding_layout->type != VK_DESCRIPTOR_TYPE_SAMPLER) {
+                               /* Sampler descriptors don't have a buffer list. */
+                               dst_buffer_list[j] = src_buffer_list[j];
+                       }
                }
        }
 }