aboutsummaryrefslogtreecommitdiff
path: root/engines/pegasus
diff options
context:
space:
mode:
authorMatthew Hoops2011-09-21 14:38:23 -0400
committerMatthew Hoops2011-09-21 14:38:23 -0400
commitf9fff1809ce8f40706ded0f00b159e96b1989274 (patch)
tree484403fe59c13d2ddbaf75ba0f7b71be4f0a9e8d /engines/pegasus
parente3080fb251386687f592aae3f2777cf29a677e68 (diff)
downloadscummvm-rg350-f9fff1809ce8f40706ded0f00b159e96b1989274.tar.gz
scummvm-rg350-f9fff1809ce8f40706ded0f00b159e96b1989274.tar.bz2
scummvm-rg350-f9fff1809ce8f40706ded0f00b159e96b1989274.zip
PEGASUS: Fix auto bits setting in the input code
Diffstat (limited to 'engines/pegasus')
-rwxr-xr-xengines/pegasus/input.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/engines/pegasus/input.cpp b/engines/pegasus/input.cpp
index 9ef369eb60..5ef1a14f82 100755
--- a/engines/pegasus/input.cpp
+++ b/engines/pegasus/input.cpp
@@ -111,10 +111,13 @@ void InputDevice::getInput(Input &input, const tInputBits filter) {
// Update the mouse position too
input.setInputLocation(g_system->getEventManager()->getMousePos());
- _lastRawBits = currentBits;
- tInputBits filteredBits = currentBits & filter;
+ // Set the outgoing bits
+ tInputBits filteredBits = currentBits & filter;
input.setInputBits((filteredBits & kAllButtonDownBits) | (filteredBits & _lastRawBits & kAllAutoBits));
+
+ // Update the last bits
+ _lastRawBits = currentBits;
}
// Wait until the input device stops returning input allowed by filter...