summaryrefslogtreecommitdiff
path: root/src/entities.cpp
diff options
context:
space:
mode:
authorJonathan Bradley <jcb@pikum.xyz>2023-10-06 14:42:03 -0400
committerJonathan Bradley <jcb@pikum.xyz>2023-10-06 17:20:20 -0400
commit791c153aabd579f518a9b00613459cba13734797 (patch)
tree858ec6f9a8398398a8a53ec5a886bca5825c62e0 /src/entities.cpp
parent286bf5539527500429cfca4ded0bb78406f6364b (diff)
Memory management - ctors and dtors
Diffstat (limited to 'src/entities.cpp')
-rw-r--r--src/entities.cpp8
1 files changed, 7 insertions, 1 deletions
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<VkDescriptorSet>(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<char>(et->modelsDir, strlen(et->modelsDir));
+ if (et->modelFile)
+ Pke_Delete<char>(et->modelFile, strlen(et->modelFile));
+ if (et->entityTypeCode)
+ Pke_Delete<char>(et->entityTypeCode, strlen(et->entityTypeCode));
}
if (vkSampler_Texture != VK_NULL_HANDLE)
vkDestroySampler(vkDevice, vkSampler_Texture, vkAllocator);