X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=udevinfo.c;h=69e5335b7cef9d26d099c72c8bf45adadac0c483;hb=c9b8dbfb652a10d2f1c1b122a3806c21cab87ab4;hp=788dd519a86e97cdf7e2d8d6cbac398189773a6a;hpb=6276fdd2ab9c0cbfd0fba3e0261a074e81932156;p=elogind.git diff --git a/udevinfo.c b/udevinfo.c index 788dd519a..69e5335b7 100644 --- a/udevinfo.c +++ b/udevinfo.c @@ -152,19 +152,16 @@ static int print_device_chain(const char *path) /* look the device chain upwards */ while (sysfs_dev != NULL) { - attr_list = sysfs_get_device_attributes(sysfs_dev); - if (attr_list == NULL) { - fprintf(stderr, "couldn't open device directory\n"); - retval = -1; - goto exit; - } - printf(" looking at the device chain at '%s':\n", sysfs_dev->path); printf(" BUS==\"%s\"\n", sysfs_dev->bus); printf(" ID==\"%s\"\n", sysfs_dev->bus_id); printf(" DRIVER==\"%s\"\n", sysfs_dev->driver_name); - print_all_attributes(attr_list); + attr_list = sysfs_get_device_attributes(sysfs_dev); + if (attr_list != NULL) + print_all_attributes(attr_list); + else + printf("\n"); sysfs_dev = sysfs_get_device_parent(sysfs_dev); if (sysfs_dev == NULL) @@ -199,7 +196,7 @@ int main(int argc, char *argv[], char *envp[]) logging_init("udevinfo"); udev_init_config(); - udev_init_device(&udev, NULL, NULL); + udev_init_device(&udev, NULL, NULL, NULL); /* get command line options */ while (1) {