From 8fea8b3cd248c01e2383d122602357388aa06416 Mon Sep 17 00:00:00 2001 From: morfidon <57798071+morfidon@users.noreply.github.com> Date: Wed, 11 Mar 2026 16:20:17 +0100 Subject: [PATCH] Clamp manual save message display time --- Source/gamemenu.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Source/gamemenu.cpp b/Source/gamemenu.cpp index e331fec2b..47ba4b5e2 100644 --- a/Source/gamemenu.cpp +++ b/Source/gamemenu.cpp @@ -383,9 +383,13 @@ void gamemenu_save_game(bool /*bActivate*/) const SaveResult saveResult = SaveGame(SaveKind::Manual); ClrDiabloMsg(); switch (saveResult) { - case SaveResult::Success: - InitDiabloMsg(EMSG_GAME_SAVED, currentTime + 1000 - SDL_GetTicks()); + case SaveResult::Success: { + const uint32_t afterSaveTime = SDL_GetTicks(); + const int timeElapsed = static_cast(afterSaveTime - currentTime); + const int displayTime = std::max(500, 1000 - timeElapsed); + InitDiabloMsg(EMSG_GAME_SAVED, displayTime); break; + } case SaveResult::FailedButPreviousSavePreserved: InitDiabloMsg(_(SaveFailedPreservedMessage)); break;