HID: wacom: generic: Strip off excessive name prefixing
authorJason Gerecke <killertofu@gmail.com>
Thu, 20 Oct 2016 01:03:41 +0000 (18:03 -0700)
committerJiri Kosina <jkosina@suse.cz>
Thu, 20 Oct 2016 07:53:56 +0000 (09:53 +0200)
The product name received from the string descriptor in the new MobileStudio
Pro line of tablets begins with "Wacom", which leads to unnecessary visual
noise in the device name when appended to the vendor name which also includes
"Wacom". Look for and fix cases like this.

Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/wacom_sys.c

index 033cc03..7b9bff2 100644 (file)
@@ -1940,6 +1940,19 @@ static void wacom_update_name(struct wacom *wacom, const char *suffix)
                                /* shift everything including the terminator */
                                memmove(gap, gap+1, strlen(gap));
                        }
+
+                       /* strip off excessive prefixing */
+                       if (strstr(name, "Wacom Co.,Ltd. Wacom ") == name) {
+                               int n = strlen(name);
+                               int x = strlen("Wacom Co.,Ltd. ");
+                               memmove(name, name+x, n-x+1);
+                       }
+                       if (strstr(name, "Wacom Co., Ltd. Wacom ") == name) {
+                               int n = strlen(name);
+                               int x = strlen("Wacom Co., Ltd. ");
+                               memmove(name, name+x, n-x+1);
+                       }
+
                        /* get rid of trailing whitespace */
                        if (name[strlen(name)-1] == ' ')
                                name[strlen(name)-1] = '\0';