From 791c153aabd579f518a9b00613459cba13734797 Mon Sep 17 00:00:00 2001 From: Jonathan Bradley Date: Fri, 6 Oct 2023 14:42:03 -0400 Subject: Memory management - ctors and dtors --- src/entities.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/entities.cpp') diff --git a/src/entities.cpp b/src/entities.cpp index efa22ae..9b088ec 100644 --- a/src/entities.cpp +++ b/src/entities.cpp @@ -921,7 +921,7 @@ void EntityType_Teardown() { // If we switch to a global pool, we will need to free here, and // destroy the pool outside of this loop vkDestroyDescriptorPool(vkDevice, et->vkDescriptorPool, vkAllocator); - Pke_Delete(grBinds->vkDescriptorSets, MAX_FRAMES_IN_FLIGHT); + Pke_Delete(grBinds->vkDescriptorSets, MAX_FRAMES_IN_FLIGHT); } if (grBinds->vertexBuffer != VK_NULL_HANDLE) vkDestroyBuffer(vkDevice, grBinds->vertexBuffer, vkAllocator); @@ -944,6 +944,12 @@ void EntityType_Teardown() { vkFreeMemory(vkDevice, et->deviceMemoryVert, vkAllocator); if (et->deviceMemoryTexture != VK_NULL_HANDLE) vkFreeMemory(vkDevice, et->deviceMemoryTexture, vkAllocator); + if (et->modelsDir) + Pke_Delete(et->modelsDir, strlen(et->modelsDir)); + if (et->modelFile) + Pke_Delete(et->modelFile, strlen(et->modelFile)); + if (et->entityTypeCode) + Pke_Delete(et->entityTypeCode, strlen(et->entityTypeCode)); } if (vkSampler_Texture != VK_NULL_HANDLE) vkDestroySampler(vkDevice, vkSampler_Texture, vkAllocator); -- cgit v1.2.3