aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/config/udev.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/config/udev.c')
-rw-r--r--xorg-server/config/udev.c10
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;
}