aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.cpp
diff options
context:
space:
mode:
authorMark Lobodzinski <mark@lunarg.com>2016-07-15 13:53:44 -0600
committerMark Lobodzinski <mark@lunarg.com>2016-07-15 15:11:59 -0600
commit8b4e98a9244fd61b75714c00e66d48885da0128c (patch)
tree60046c00faafcf0c54e1cd55881de16547c5e2ed /layers/core_validation.cpp
parentd55711431dc7345c09a7505f0976cfe271d7e6a7 (diff)
downloadusermoji-8b4e98a9244fd61b75714c00e66d48885da0128c.tar.xz
layers: PR767, Fix crash exiting smoketest
Commit a86b57c caused a Windows crash when shutting down smoketest. Command buffer cleanup for object bindings wasn't happening when calling DestroyCommandPool. Change-Id: Ie233763e37ed9bc6988dddbf932aa3eda2960940
Diffstat (limited to 'layers/core_validation.cpp')
-rw-r--r--layers/core_validation.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index 0057db1e..1414bd5d 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -5603,6 +5603,9 @@ DestroyCommandPool(VkDevice device, VkCommandPool commandPool, const VkAllocatio
for (auto cb : pPool->commandBuffers) {
clear_cmd_buf_and_mem_references(dev_data, cb);
auto cb_node = getCBNode(dev_data, cb);
+ for (auto obj : cb_node->object_bindings) {
+ removeCommandBufferBinding(dev_data, &obj, cb_node);
+ }
dev_data->commandBufferMap.erase(cb); // Remove this command buffer
delete cb_node; // delete CB info structure
}