chiark / gitweb /
Fix Dell Studio 1558 volume keys not releasing
[elogind.git] / udev / udevadm-info.c
index 519dc4a45bf586fe27d96cacfe72c3fc98f0201d..47114092d7ba1a7aaf80acaa4a9633c019557f00 100644 (file)
@@ -60,7 +60,7 @@ static void print_all_attributes(struct udev_device *device, const char *key)
                        value = udev_device_get_sysattr_value(device, dent->d_name);
                        if (value == NULL)
                                continue;
-                       dbg(udev, "attr '%s'='%s'(%zi)\n", dent->d_name, value, len);
+                       dbg(udev, "attr '%s'='%s'\n", dent->d_name, value);
 
                        /* skip nonprintable attributes */
                        len = strlen(value);
@@ -388,23 +388,24 @@ int udevadm_info(struct udev *udev, int argc, char *argv[])
                }
 
                switch(query) {
-               case QUERY_NAME:
+               case QUERY_NAME: {
+                       const char *node = udev_device_get_devnode(device);
+
+                       if (node == NULL) {
+                               fprintf(stderr, "no device node found\n");
+                               rc = 5;
+                               goto exit;
+                       }
+
                        if (root) {
                                printf("%s\n", udev_device_get_devnode(device));
                        } else {
-                               size_t len;
-                               const char *node;
-
-                               len = strlen(udev_get_dev_path(udev));
-                               node = udev_device_get_devnode(device);
-                               if (node == NULL) {
-                                       fprintf(stderr, "no device node found\n");
-                                       rc = 5;
-                                       goto exit;
-                               }
-                                       printf("%s\n", &udev_device_get_devnode(device)[len+1]);
+                               size_t len = strlen(udev_get_dev_path(udev));
+
+                               printf("%s\n", &udev_device_get_devnode(device)[len+1]);
                        }
                        break;
+               }
                case QUERY_SYMLINK:
                        list_entry = udev_device_get_devlinks_list_entry(device);
                        while (list_entry != NULL) {