summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Ossman <pierre@ossman.eu>2009-04-28 09:34:55 +0200
committerKeith Packard <keithp@keithp.com>2009-05-08 21:58:41 -0700
commite21c9949ac456ba9b162b6244a17e68c5b8112a9 (patch)
tree8fee60268b68891d2e45ba4a227926f91bce21ce
parent3b1ff33587458bad45777b8eb74b81c3e55987ad (diff)
dix: fix calculation of number of fake KeyRelease events
Signed-off-by: Pierre Ossman <pierre@ossman.eu> Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--dix/getevents.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/dix/getevents.c b/dix/getevents.c
index 279f49e54..9747b35a6 100644
--- a/dix/getevents.c
+++ b/dix/getevents.c
@@ -820,11 +820,15 @@ GetKeyboardValuatorEvents(EventList *events, DeviceIntPtr pDev, int type,
if (noXkbExtension)
#endif
{
- numEvents += GetKeyboardValuatorEvents(events, pDev,
- KeyRelease, key_code,
- first_valuator, num_valuators,
- valuators);
- events += numEvents;
+ int numReleaseEvents;
+
+ numReleaseEvents = GetKeyboardValuatorEvents(events, pDev,
+ KeyRelease, key_code,
+ first_valuator,
+ num_valuators,
+ valuators);
+ numEvents += numReleaseEvents;
+ events += numReleaseEvents;
}
}