diff options
| author | Peter Hutterer <peter.hutterer@who-t.net> | 2013-07-02 10:55:44 +1000 |
|---|---|---|
| committer | Peter Hutterer <peter.hutterer@who-t.net> | 2013-07-02 14:02:58 +1000 |
| commit | 2ba194f51b8aae44ba6ee8d0f157bcceae82c729 (patch) | |
| tree | a0d6ddba8369186aa54f8a733feefaf64569e426 /libevdev/libevdev.c | |
| parent | c661e80ba0f20ea8b71fcc0aa02840c52314710a (diff) | |
| download | libevdev-2ba194f51b8aae44ba6ee8d0f157bcceae82c729.tar.gz | |
If we don't have anything to sync, don't add a EV_SYN event
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'libevdev/libevdev.c')
| -rw-r--r-- | libevdev/libevdev.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c index 445cc54..8d339f4 100644 --- a/libevdev/libevdev.c +++ b/libevdev/libevdev.c @@ -426,11 +426,14 @@ sync_state(struct libevdev *dev) if (rc == 0 && libevdev_has_event_code(dev, EV_ABS, ABS_MT_SLOT)) rc = sync_mt_state(dev); - ev = queue_push(dev); - init_event(dev, ev, EV_SYN, SYN_REPORT, 0); - dev->queue_nsync = queue_num_elements(dev); + if (dev->queue_nsync > 0) { + ev = queue_push(dev); + init_event(dev, ev, EV_SYN, SYN_REPORT, 0); + dev->queue_nsync++; + } + return rc; } |
