anv/descriptor_set: Initialize immutable_samplers to NULL

Previously this wasn't a problem.  However, with the new API update,
descriptor sets can now be sparse so the client doesn't have to provide an
entry for every binding.  This means that it's possible for a binding to be
uninitialized other than the memset.  In that case, we want to have a null
array of immutable samplers.
This commit is contained in:
Jason Ekstrand
2015-12-15 16:24:19 -08:00
parent 28c4ef9d6c
commit d61ff1ed08
+6 -3
View File
@@ -70,9 +70,12 @@ VkResult anv_CreateDescriptorSetLayout(
set_layout->shader_stages = 0;
set_layout->size = 0;
/* Initialize all binding_layout entries to -1 */
memset(set_layout->binding, -1,
(max_binding + 1) * sizeof(set_layout->binding[0]));
for (uint32_t b = 0; b <= max_binding; b++) {
/* Initialize all binding_layout entries to -1 */
memset(&set_layout->binding[b], -1, sizeof(set_layout->binding[b]));
set_layout->binding[b].immutable_samplers = NULL;
}
/* Initialize all samplers to 0 */
memset(samplers, 0, immutable_sampler_count * sizeof(*samplers));