diff options
author | Henrik Rydberg <rydberg@bitmath.org> | 2010-08-18 11:01:28 +0200 |
---|---|---|
committer | Henrik Rydberg <rydberg@bitmath.org> | 2010-08-18 11:01:28 +0200 |
commit | 810cef87de0d65e505e68ad39c469c2e9ce6d0a1 (patch) | |
tree | e519d00af38becc6d14a13a303298cba6cca8d59 | |
parent | e91311dc01f970b687da4f00810cf40d3d37a5e4 (diff) | |
download | mtdev-git-810cef87de0d65e505e68ad39c469c2e9ce6d0a1.tar.gz |
Correct logic for kernel MT slots devices
This patch fixes the broken logic to detect the kernel MT slots protocol,
such that MT slots devices may pass through mtdev properly.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
-rw-r--r-- | src/core.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -369,10 +369,10 @@ void mtdev_put_event(struct mtdev *dev, const struct input_event *ev) struct mtdev_state *state = dev->state; if (ev->type == EV_SYN && ev->code == SYN_REPORT) { bitmask_t head = state->outbuf.head; - if (dev->state) - convert_A_to_B(state, &dev->caps, ev); - else + if (dev->caps.has_slot) process_typeB(state); + else + convert_A_to_B(state, &dev->caps, ev); if (state->outbuf.head != head) evbuf_put(&state->outbuf, ev); } else { |