diff options
| author | jamesbond <jamesbond> | 2014-08-05 00:08:52 +0000 | 
|---|---|---|
| committer | Leandro Pereira <leandro@hardinfo.org> | 2015-10-25 15:49:33 -0200 | 
| commit | ed99fc74e637e7b62c907fb77c41dd331a955fa9 (patch) | |
| tree | cb5b79d289df3ff99405e5acc64c6ae96e868715 /modules/devices | |
| parent | 6dd14fed6db519a2feb77a5b2b6e73ff03c4d043 (diff) | |
fix usb information display.
Diffstat (limited to 'modules/devices')
| -rw-r--r-- | modules/devices/usb.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/modules/devices/usb.c b/modules/devices/usb.c index 3452932a..2446bd06 100644 --- a/modules/devices/usb.c +++ b/modules/devices/usb.c @@ -248,14 +248,16 @@ void __scan_usb_lsusb_add_device(char *buffer, int bufsize, FILE *lsusb, int usb  {      gint bus, device, vendor_id, product_id;      gchar *version = NULL, *product = NULL, *vendor = NULL, *dev_class = NULL, *int_class = NULL; -    gchar *max_power = NULL; +    gchar *max_power = NULL, *name=NULL;      gchar *tmp, *strhash;      long position; +	g_strstrip(buffer);      sscanf(buffer, "Bus %d Device %d: ID %x:%x",             &bus, &device, &vendor_id, &product_id); +	name = g_strdup (buffer + 33);  -    for (fgets(buffer, bufsize, lsusb); position = ftell(lsusb); fgets(buffer, bufsize, lsusb)) { +    for (fgets(buffer, bufsize, lsusb); fgets(buffer, bufsize, lsusb); position = ftell(lsusb)) {          g_strstrip(buffer);          if (g_str_has_prefix(buffer, "idVendor")) { @@ -293,7 +295,7 @@ void __scan_usb_lsusb_add_device(char *buffer, int bufsize, FILE *lsusb, int usb      }      tmp = g_strdup_printf("USB%d", usb_device_number); -    usb_list = h_strdup_cprintf("$%s$%s=\n", usb_list, tmp, product ? product : "Unknown"); +    usb_list = h_strdup_cprintf("$%s$%s=\n", usb_list, tmp, name);      strhash = g_strdup_printf("[Device Information]\n"  			      "Product=%s\n" @@ -319,6 +321,7 @@ void __scan_usb_lsusb_add_device(char *buffer, int bufsize, FILE *lsusb, int usb      g_free(dev_class);      g_free(version);      g_free(tmp); +    g_free(name);  }  gboolean __scan_usb_lsusb(void) | 
