X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev_rules.c;h=939febe8f69e20986a5b4629f69cd5f5caddbccc;hb=bf375e3af65f0e9728516a3627613fb95288c1d1;hp=5669a8593ede14c05c1449ebcbe66086cc01bc91;hpb=39e54555a961fa6c4c8e7d260a0e208439dc0cfa;p=elogind.git diff --git a/udev_rules.c b/udev_rules.c index 5669a8593..939febe8f 100644 --- a/udev_rules.c +++ b/udev_rules.c @@ -748,8 +748,8 @@ static int match_rule(struct udevice *udev, struct udev_rule *rule, const char *value = getenv(key_name); if (!value) { - dbg("ENV{'%s'} is not found", key_name); - goto exit; + dbg("ENV{'%s'} is not set", key_name); + value = ""; } if (match_key("ENV", rule, &pair->key, value)) goto exit; @@ -1069,6 +1069,11 @@ int udev_rules_get_name(struct udev_rules *rules, struct udevice *udev, struct s dbg("last rule to be applied"); break; } + + if (rule->goto_label.operation != KEY_OP_UNSET) { + dbg("moving forward to label '%s'", key_val(rule, &rule->goto_label)); + udev_rules_iter_label(rules, key_val(rule, &rule->goto_label)); + } } }