summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/window.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/window.cpp b/src/window.cpp
index 1c9b070..c825c99 100644
--- a/src/window.cpp
+++ b/src/window.cpp
@@ -32,6 +32,8 @@ DynArray<pke_vkAllocData> *vulkanAllocs = nullptr;
const bool ENABLE_VALIDATION_LAYERS = true;
const bool VULKAN_DEBUG_REPORT = true;
+bool pke_window_did_init_imgui = false;
+
/*
* Initialization
*/
@@ -2420,6 +2422,7 @@ void CreateImGui() {
initInfo.UseDynamicRendering = false;
ImGui_ImplVulkan_Init(&initInfo);
+ pke_window_did_init_imgui = true;
// font
// {
@@ -2806,9 +2809,11 @@ void CreateWindow(PKEWindowProperties wp) {
void DestroyWindow() {
if (vkInstance == nullptr) return;
- ImGui_ImplVulkan_Shutdown();
- ImGui_ImplGlfw_Shutdown();
- ImGui::DestroyContext();
+ if (pke_window_did_init_imgui == true) {
+ ImGui_ImplVulkan_Shutdown();
+ ImGui_ImplGlfw_Shutdown();
+ ImGui::DestroyContext();
+ }
DestroySwapchain();
vkDestroyDescriptorPool(vkDevice, pkeDebugHitbox.vkDescriptorPool, vkAllocator);