[PATCH libinput] evdev: check model flags for actual booleans
Hans de Goede
hdegoede at redhat.com
Thu Jun 9 11:05:05 UTC 2016
Hi,
On 09-06-16 02:53, Peter Hutterer wrote:
> The hwdb doesn't allow unsetting a property so once we start nesting model
> flags it'll become important to be able to be able to unset one as well (by
> assigning it to 0).
>
> So rather than checking for existence, check whether the property is actually
> set to something resembling a boolean.
>
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
patch looks good to me:
Reviewed-by: Hans de Goede <hdegoede at redhat.com>
Regards,
Hans
> ---
> src/evdev.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/evdev.c b/src/evdev.c
> index 0227f51..e0923cd 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),
>
More information about the wayland-devel
mailing list