diff options
-rw-r--r-- | engines/agi/inv.cpp | 2 | ||||
-rw-r--r-- | engines/agi/keyboard.cpp | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/engines/agi/inv.cpp b/engines/agi/inv.cpp index 46dfcb2b43..f1d9523887 100644 --- a/engines/agi/inv.cpp +++ b/engines/agi/inv.cpp @@ -66,7 +66,7 @@ namespace Agi { #define SELECT_MSG_RU "ENTER - \xa2\xeb\xa1\xe0\xa0\xe2\xec, ESC - \xae\xe2\xac\xa5\xad\xa8\xe2\xec." void AgiEngine::printItem(int n, int fg, int bg) { - printText(objectName(_intobj[n]), 0, n % 2 ? 39 - strlen(objectName(_intobj[n])) : 1, + printText(objectName(_intobj[n]), 0, ((n % 2) ? 39 - strlen(objectName(_intobj[n])) : 1), (n / 2) + 2, 40, fg, bg); } diff --git a/engines/agi/keyboard.cpp b/engines/agi/keyboard.cpp index 344654128d..95211f8e3c 100644 --- a/engines/agi/keyboard.cpp +++ b/engines/agi/keyboard.cpp @@ -279,7 +279,7 @@ void AgiEngine::handleGetstring(int key) { void AgiEngine::handleKeys(int key) { uint8 *p = NULL; int c = 0; - static uint8 formattedEntry[256]; + static uint8 formattedEntry[40]; int l = _game.lineUserInput; int fg = _game.colorFg, bg = _game.colorBg; int promptLength = strlen(agiSprintf(_game.strings[0])); @@ -298,7 +298,7 @@ void AgiEngine::handleKeys(int key) { ; // Copy to internal buffer - for (; *p; p++) { + for (; *p && c < 40-1; p++) { // Squash spaces if (*p == 0x20 && *(p + 1) == 0x20) { p++; |