diff options
Diffstat (limited to 'xorg-server/config/udev.c')
-rw-r--r-- | xorg-server/config/udev.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/xorg-server/config/udev.c b/xorg-server/config/udev.c index 3ef0d7fb3..432ab85e9 100644 --- a/xorg-server/config/udev.c +++ b/xorg-server/config/udev.c @@ -84,6 +84,7 @@ device_added(struct udev_device *udev_device) add_option(&options, "path", path); add_option(&options, "device", path); attrs.device = path; + attrs.tags = xstrtokenize(udev_device_get_property_value(udev_device, "ID_INPUT.tags"), ","); config_info = Xprintf("udev:%s", syspath); if (!config_info) @@ -150,6 +151,15 @@ device_added(struct udev_device *udev_device) xfree(tmpo); } + if (attrs.tags) { + char **tag = attrs.tags; + while (*tag) { + xfree(*tag); + tag++; + } + xfree(attrs.tags); + } + return; } |