[Scummvm-cvs-logs] SF.net SVN: scummvm: [26948] scummvm/trunk/engines/scumm/input.cpp

sev at users.sourceforge.net sev at users.sourceforge.net
Sat May 26 20:12:13 CEST 2007


Revision: 26948
          http://scummvm.svn.sourceforge.net/scummvm/?rev=26948&view=rev
Author:   sev
Date:     2007-05-26 11:12:12 -0700 (Sat, 26 May 2007)

Log Message:
-----------
Fix bug #1709430: "FT: CAPSLOCK + V enables cheating for all fights"

Modified Paths:
--------------
    scummvm/trunk/engines/scumm/input.cpp

Modified: scummvm/trunk/engines/scumm/input.cpp
===================================================================
--- scummvm/trunk/engines/scumm/input.cpp	2007-05-26 17:39:33 UTC (rev 26947)
+++ scummvm/trunk/engines/scumm/input.cpp	2007-05-26 18:12:12 UTC (rev 26948)
@@ -145,8 +145,18 @@
 			// possible to a bug in sdl-common.cpp
 			if (event.kbd.ascii >= 512)
 				debugC(DEBUG_GENERAL, "keyPressed > 512 (%d)", event.kbd.ascii);
-			else
+			else {
 				_keyDownMap[event.kbd.ascii] = false;
+
+				// Due to some weird bug with capslock key pressed
+				// generated keydown event is for lower letter but
+				// keyup is for upper letter
+				// On most (all?) keyboards it is safe to assume that
+				// both upper and lower letters are unpressed on keyup event
+				//
+				// Fixes bug #1709430: "FT: CAPSLOCK + V enables cheating for all fights"
+				_keyDownMap[toupper(event.kbd.ascii)] = false;
+			}
 			break;
 
 


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