From d700bfca082c932c2d533fb7a4413266c221cc37 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Thu, 14 Mar 2024 01:58:43 -0500 Subject: [PATCH] prepare for deferred config saving issue #1723 --- src/engine/engine.cpp | 8 +++++--- src/engine/engine.h | 2 +- src/gui/gui.cpp | 6 +++++- src/gui/gui.h | 2 +- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index ee254c2c8..ee99ae002 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -4013,11 +4013,13 @@ bool DivEngine::init() { return true; } -bool DivEngine::quit() { +bool DivEngine::quit(bool saveConfig) { deinitAudioBackend(); quitDispatch(); - logI("saving config."); - saveConf(); + if (saveConfig) { + logI("saving config."); + saveConf(); + } active=false; for (int i=0; iquitGUI(); ImGui_ImplSDL2_Shutdown(); quitRender(); diff --git a/src/gui/gui.h b/src/gui/gui.h index 1188d78d1..e99964454 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -2735,7 +2735,7 @@ class FurnaceGUI { bool detectOutOfBoundsWindow(SDL_Rect& failing); int processEvent(SDL_Event* ev); bool loop(); - bool finish(); + bool finish(bool saveConfig=false); bool init(); bool requestQuit(); FurnaceGUI();