X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev_rules.c;h=a25c2e90a8bc196b6f3a44a219b339a01505c74b;hb=7b2bdb4b1bd9e273ea67e4538be3f7d3545331fa;hp=27fb0a89a607065207e689d995f07433314b4b83;hpb=613ffbeb15e0507581e5037850c1ea5d56cd0928;p=elogind.git diff --git a/udev_rules.c b/udev_rules.c index 27fb0a89a..a25c2e90a 100644 --- a/udev_rules.c +++ b/udev_rules.c @@ -31,6 +31,7 @@ #include #include #include +#include #include "libsysfs/sysfs/libsysfs.h" #include "list.h" @@ -957,16 +958,22 @@ int udev_rules_get_name(struct udev_rules *rules, struct udevice *udev, struct s /* add multiple symlinks separated by spaces */ pos = temp; - next = strchr(temp, ' '); + while (isspace(pos[0])) + pos++; + next = strchr(pos, ' '); while (next) { next[0] = '\0'; info("add symlink '%s'", pos); name_list_add(&udev->symlink_list, pos, 0); + while (isspace(next[1])) + next++; pos = &next[1]; next = strchr(pos, ' '); } - info("add symlink '%s'", pos); - name_list_add(&udev->symlink_list, pos, 0); + if (pos[0] != '\0') { + info("add symlink '%s'", pos); + name_list_add(&udev->symlink_list, pos, 0); + } } /* set name, later rules with name set will be ignored */