diff --git a/src/evdev.c b/src/evdev.c index 0227f515..e0923cd9 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1813,10 +1813,12 @@ evdev_read_model_flags(struct evdev_device *device) }; const struct model_map *m = model_map; uint32_t model_flags = 0; + const char *val; while (m->property) { - if (!!udev_device_get_property_value(device->udev_device, - m->property)) { + val = udev_device_get_property_value(device->udev_device, + m->property); + if (val && !streq(val, "0")) { log_debug(device->base.seat->libinput, "%s: tagged as %s\n", evdev_device_get_sysname(device),