aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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...