aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobin Ehlis <tobin@lunarg.com>2015-11-02 13:13:21 -0700
committerTobin Ehlis <tobin@lunarg.com>2015-11-02 13:13:21 -0700
commit399e6db5f8609c3d28ee42a0a151dd2dbfa8dfc3 (patch)
tree9193bd7b9b1e0629f1afc950ca978f6f29a446cc
parent9c9231840a0eeb679544041df7976ae569dcd1c3 (diff)
parent466f001862003a19de54abadb8ae8dc97625dcf6 (diff)
downloadusermoji-399e6db5f8609c3d28ee42a0a151dd2dbfa8dfc3.tar.xz
Merge branch 'master' of gitlab.khronos.org:vulkan/LoaderAndTools
-rw-r--r--demos/cube.c4
-rw-r--r--demos/tri.c4
-rwxr-xr-xlayers/draw_state.cpp33
3 files changed, 29 insertions, 12 deletions
diff --git a/demos/cube.c b/demos/cube.c
index 22a925f5..d5fa775f 100644
--- a/demos/cube.c
+++ b/demos/cube.c
@@ -1142,9 +1142,9 @@ static void demo_prepare_textures(struct demo *demo)
VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL);
VkImageCopy copy_region = {
- .srcSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0 },
+ .srcSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0, 1 },
.srcOffset = { 0, 0, 0 },
- .destSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0 },
+ .destSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0, 1 },
.destOffset = { 0, 0, 0 },
.extent = { staging_texture.tex_width, staging_texture.tex_height, 1 },
};
diff --git a/demos/tri.c b/demos/tri.c
index 5eb22fd5..25cddf3e 100644
--- a/demos/tri.c
+++ b/demos/tri.c
@@ -900,9 +900,9 @@ static void demo_prepare_textures(struct demo *demo)
VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL);
VkImageCopy copy_region = {
- .srcSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0 },
+ .srcSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0, 1 },
.srcOffset = { 0, 0, 0 },
- .destSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0 },
+ .destSubresource = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 0, 1 },
.destOffset = { 0, 0, 0 },
.extent = { staging_texture.tex_width, staging_texture.tex_height, 1 },
};
diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp
index fec569f9..cb2c46dd 100755
--- a/layers/draw_state.cpp
+++ b/layers/draw_state.cpp
@@ -1169,14 +1169,31 @@ static void freeShadowUpdateTree(SET_NODE* pSet)
{
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET:
pWDS = (VkWriteDescriptorSet*)pFreeUpdate;
- if (pWDS->pImageInfo) {
- delete[] pWDS->pImageInfo;
- }
- if (pWDS->pBufferInfo) {
- delete[] pWDS->pBufferInfo;
- }
- if (pWDS->pTexelBufferView) {
- delete[] pWDS->pTexelBufferView;
+ switch (pWDS->descriptorType) {
+ case VK_DESCRIPTOR_TYPE_SAMPLER:
+ case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
+ case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
+ case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
+ {
+ delete[] pWDS->pImageInfo;
+ }
+ break;
+ case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
+ case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
+ {
+ delete[] pWDS->pTexelBufferView;
+ }
+ break;
+ case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
+ case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
+ case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
+ case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
+ {
+ delete[] pWDS->pBufferInfo;
+ }
+ break;
+ default:
+ break;
}
break;
case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET: