[Scummvm-cvs-logs] SF.net SVN: scummvm:[40468] scummvm/trunk/engines/agi

sev at users.sourceforge.net sev at users.sourceforge.net
Mon May 11 22:59:01 CEST 2009


Revision: 40468
          http://scummvm.svn.sourceforge.net/scummvm/?rev=40468&view=rev
Author:   sev
Date:     2009-05-11 20:58:55 +0000 (Mon, 11 May 2009)

Log Message:
-----------
Fix bug #1946262: "LSL1: Age Verification answer input not working"

Modified Paths:
--------------
    scummvm/trunk/engines/agi/agi.cpp
    scummvm/trunk/engines/agi/keyboard.cpp

Modified: scummvm/trunk/engines/agi/agi.cpp
===================================================================
--- scummvm/trunk/engines/agi/agi.cpp	2009-05-11 20:53:28 UTC (rev 40467)
+++ scummvm/trunk/engines/agi/agi.cpp	2009-05-11 20:58:55 UTC (rev 40468)
@@ -73,6 +73,9 @@
 					newInputMode(INPUT_NORMAL);
 					_gfx->printCharacter(_stringdata.x + strlen(_game.strings[_stringdata.str]) + 1,
 							_stringdata.y, ' ', _game.colorFg, _game.colorBg);
+				} else if (_game.inputMode == INPUT_NONE) {
+					for (int n = 0; _predictiveResult[n]; n++)
+						keyEnqueue(_predictiveResult[n]);
 				}
 			}
 			break;

Modified: scummvm/trunk/engines/agi/keyboard.cpp
===================================================================
--- scummvm/trunk/engines/agi/keyboard.cpp	2009-05-11 20:53:28 UTC (rev 40467)
+++ scummvm/trunk/engines/agi/keyboard.cpp	2009-05-11 20:58:55 UTC (rev 40468)
@@ -140,8 +140,13 @@
 			(int)g_mouse.y >= _game.lineUserInput * CHAR_LINES &&
 			(int)g_mouse.y <= (_game.lineUserInput + 1) * CHAR_LINES) {
 		if (predictiveDialog()) {
-			strcpy((char *)_game.inputBuffer, _predictiveResult);
-			handleKeys(KEY_ENTER);
+			if (_game.inputMode == INPUT_NONE) {
+				for (int n = 0; _predictiveResult[n]; n++)
+					keyEnqueue(_predictiveResult[n]);
+			} else {
+				strcpy((char *)_game.inputBuffer, _predictiveResult);
+				handleKeys(KEY_ENTER);
+			}
 		}
 		return true;
 	}
@@ -396,7 +401,7 @@
 		_gfx->getKey();
 	}
 
-	debugC(3, kDebugLevelInput, "waiting...");
+	debugC(3, kDebugLevelInput, "waiting... (any key)");
 	while (!(shouldQuit() || restartGame)) {
 		_gfx->pollTimer();	/* msdos driver -> does nothing */
 		key = doPollKeyboard();


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list