mirror of
https://gitlab.freedesktop.org/libevdev/libevdev.git
synced 2026-05-05 13:28:00 +02:00
Add a fixme: if we're dropping sync event, libedev loses state info too
If a client doesn't care about syncing that's one thing, but libevdev functions still need to return the right _current_ (i.e. synced) value. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
20c4c73adf
commit
897dfba2ef
1 changed files with 5 additions and 1 deletions
|
|
@ -541,8 +541,12 @@ int libevdev_next_event(struct libevdev *dev, unsigned int flags, struct input_e
|
||||||
if (rc != 0)
|
if (rc != 0)
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
} else if (dev->need_sync)
|
} else if (dev->need_sync) {
|
||||||
|
/* FIXME: still need to call update_state for all events
|
||||||
|
* here, otherwise the library has the wrong view of the
|
||||||
|
* device too */
|
||||||
queue_shift_multiple(dev, dev->queue_nsync, NULL);
|
queue_shift_multiple(dev, dev->queue_nsync, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
/* Always read in some more events. Best case this smoothes over a potential SYN_DROPPED,
|
/* Always read in some more events. Best case this smoothes over a potential SYN_DROPPED,
|
||||||
worst case we don't read fast enough and end up with SYN_DROPPED anyway */
|
worst case we don't read fast enough and end up with SYN_DROPPED anyway */
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue