[Scummvm-git-logs] scummvm branch-3-0 -> 74738acddcda69ab7cef7a7c6b87599d71800eea
sluicebox
noreply at scummvm.org
Wed Dec 10 23:39:59 UTC 2025
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
74738acddc PRIVATE: Fix diary crash during intro movie
Commit: 74738acddcda69ab7cef7a7c6b87599d71800eea
https://github.com/scummvm/scummvm/commit/74738acddcda69ab7cef7a7c6b87599d71800eea
Author: sluicebox (22204938+sluicebox at users.noreply.github.com)
Date: 2025-12-10T15:39:53-08:00
Commit Message:
PRIVATE: Fix diary crash during intro movie
- Fixes crash when viewing diary while there are no memories
- Fixes infinite empty pages when there are no memories
Changed paths:
engines/private/funcs.cpp
engines/private/private.cpp
diff --git a/engines/private/funcs.cpp b/engines/private/funcs.cpp
index 2c977d1d60e..0139cf9375c 100644
--- a/engines/private/funcs.cpp
+++ b/engines/private/funcs.cpp
@@ -131,7 +131,7 @@ static void fDiaryPageTurn(ArgArray args) {
if (args[0].u.val == 1) {
e.cursor = "kTurnRight";
- if ((uint)g_private->_currentDiaryPage == g_private->_diaryPages.size() - 1) {
+ if (g_private->_currentDiaryPage >= (int)g_private->_diaryPages.size() - 1) {
e.nextSetting = g_private->getDiaryLastPageSetting();
}
@@ -139,7 +139,7 @@ static void fDiaryPageTurn(ArgArray args) {
} else {
e.cursor = "kTurnLeft";
- if (g_private->_currentDiaryPage == 0) {
+ if (g_private->_currentDiaryPage <= 0) {
e.nextSetting = g_private->getDiaryTOCSetting();
}
diff --git a/engines/private/private.cpp b/engines/private/private.cpp
index 6f985201e28..32a4a6008b7 100644
--- a/engines/private/private.cpp
+++ b/engines/private/private.cpp
@@ -2990,7 +2990,7 @@ void PrivateEngine::loadInventory(uint32 x, const Common::Rect &r1, const Common
}
void PrivateEngine::loadMemories(const Common::Rect &rect, uint rightPageOffset, uint verticalOffset) {
- if (_currentDiaryPage < 0)
+ if (_currentDiaryPage < 0 ||_currentDiaryPage >= (int)_diaryPages.size())
return;
Common::String s = Common::String::format("inface/diary/loctabs/drytab%d.bmp", _diaryPages[_currentDiaryPage].locationID);
More information about the Scummvm-git-logs
mailing list