diff options
author | Henrik Rydberg <rydberg@bitmath.org> | 2011-04-19 11:30:16 +0200 |
---|---|---|
committer | Henrik Rydberg <rydberg@bitmath.org> | 2011-04-19 11:30:16 +0200 |
commit | cb2fa51d091e90172a02a23bb06bbbe7e2ab9a4c (patch) | |
tree | 9fff25d8f823a69335191b9f851d90e4d2208456 | |
parent | fde70805eecc933ca97cbad90e62a1e97aa54dcd (diff) |
Skip devices with EV_ABS and min/max of 0/0
The kernel doesn't like those devices and initialization will fail.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
-rw-r--r-- | src/evemu.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/evemu.c b/src/evemu.c index df6b250..52307a6 100644 --- a/src/evemu.c +++ b/src/evemu.c @@ -454,6 +454,12 @@ static int set_mask(const struct evemu_device *dev, int type, int fd) for (i = 0; i < bits; i++) { if (!evemu_has_event(dev, type, i)) continue; + + /* kernel doesn't like those */ + if (type == EV_ABS && + dev->abs[i].maximum == 0 && dev->abs[i].minimum == 0) + continue; + ret = set_event_bit(fd, type, i); if (ret < 0) return ret; |