layers: Reenable MemTracker reference tracking
Which was disabled during the type-safety dark times.
diff --git a/layers/mem_tracker.cpp b/layers/mem_tracker.cpp
index e0b4305..d1284d8 100644
--- a/layers/mem_tracker.cpp
+++ b/layers/mem_tracker.cpp
@@ -949,10 +949,10 @@
// Now verify that no references to this mem obj remain
// TODO : Is this check still valid? I don't think so
// Even if not, we still need to remove binding from obj
-// if (0 != pInfo->refCount) {
-// reportMemReferencesAndCleanUp(pInfo);
-// result = VK_FALSE;
-// }
+ if (0 != pInfo->refCount) {
+ reportMemReferencesAndCleanUp(pInfo);
+ result = VK_FALSE;
+ }
// Delete mem obj info
deleteMemObjInfo(object, mem.handle);
}
@@ -1626,6 +1626,7 @@
loader_platform_thread_lock_mutex(&globalLock);
auto item = bufferMap.find(buffer.handle);
if (item != bufferMap.end()) {
+ clear_object_binding(device, buffer.handle, VK_OBJECT_TYPE_BUFFER);
bufferMap.erase(item);
}
loader_platform_thread_unlock_mutex(&globalLock);
@@ -1637,6 +1638,7 @@
loader_platform_thread_lock_mutex(&globalLock);
auto item = imageMap.find(image.handle);
if (item != imageMap.end()) {
+ clear_object_binding(device, image.handle, VK_OBJECT_TYPE_IMAGE);
imageMap.erase(item);
}
loader_platform_thread_unlock_mutex(&globalLock);