chiark / gitweb /
thread unknown ENV{key} match as empty value
[elogind.git] / udev_rules.c
index d08edf7782fda5460153f9569efdfaa0623c5f21..4bf05cd43781d0c763372de8b0241627cbdfbf4c 100644 (file)
@@ -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;
@@ -987,7 +987,7 @@ int udev_rules_get_name(struct udev_rules *rules, struct udevice *udev, struct s
                                if (rule->group.operation == KEY_OP_ASSIGN_FINAL)
                                        udev->group_final = 1;
                                strlcpy(udev->group, key_val(rule, &rule->group), sizeof(udev->group));
-                               apply_format(udev, key_val(rule, &rule->group), sizeof(udev->group), class_dev, sysfs_device);
+                               apply_format(udev, udev->group, sizeof(udev->group), class_dev, sysfs_device);
                                dbg("applied group='%s' to '%s'", udev->group, udev->kernel_name);
                        }