summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/sixaxis.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/plugins/sixaxis.c b/plugins/sixaxis.c
index d693a86c0..517cecc47 100644
--- a/plugins/sixaxis.c
+++ b/plugins/sixaxis.c
@@ -387,6 +387,7 @@ get_pairing_type_for_device(struct udev_device *udevice, uint16_t *bus,
char **sysfs_path)
{
struct udev_device *hid_parent;
+ const char *hid_name;
const char *hid_id;
const struct cable_pairing *cp;
uint16_t vid, pid;
@@ -401,7 +402,9 @@ get_pairing_type_for_device(struct udev_device *udevice, uint16_t *bus,
if (!hid_id || sscanf(hid_id, "%hx:%hx:%hx", bus, &vid, &pid) != 3)
return NULL;
- cp = get_pairing(vid, pid);
+ hid_name = udev_device_get_property_value(hid_parent, "HID_NAME");
+
+ cp = get_pairing(vid, pid, hid_name);
*sysfs_path = g_strdup(udev_device_get_syspath(udevice));
return cp;