From be0ec8c5a691873b151e2d367f76ff82d5b159eb Mon Sep 17 00:00:00 2001 From: Gregor Parzefall Date: Fri, 19 Apr 2024 18:07:25 +0200 Subject: [PATCH] Fix some Game members not being freed after some startup errors --- src/client/game.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/client/game.cpp b/src/client/game.cpp index 4bd3d593d..88a737780 100644 --- a/src/client/game.cpp +++ b/src/client/game.cpp @@ -4558,6 +4558,10 @@ void the_game(bool *kill, error_message = std::string("ModError: ") + e.what() + strgettext("\nCheck debug.txt for details."); errorstream << error_message << std::endl; + } catch (...) { + // Game::shutdown must always be called. + game.shutdown(); + throw; } game.shutdown(); }