Properly dispose of the sw::Renderer object
This fixes a memory leak in the Queue object. The sw::Renderer
object has a non trivial destructor, which means we need to call
it before deallocating the Queue objects.
Bug b/117974925
Change-Id: I1e13c6108e77d5cdcbea337d572f72fdd32530a1
Reviewed-on: https://swiftshader-review.googlesource.com/c/23188
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Chris Forbes <chrisforbes@google.com>
diff --git a/src/Vulkan/VkDevice.cpp b/src/Vulkan/VkDevice.cpp
index 092b252..78a9e9c 100644
--- a/src/Vulkan/VkDevice.cpp
+++ b/src/Vulkan/VkDevice.cpp
@@ -58,6 +58,11 @@
void Device::destroy(const VkAllocationCallbacks* pAllocator)
{
+ for(uint32_t i = 0; i < queueCount; i++)
+ {
+ queues[i].destroy();
+ }
+
vk::deallocate(queues, pAllocator);
}