diff options
author | Anthony G. Basile <blueness@gentoo.org> | 2017-02-25 14:59:19 -0500 |
---|---|---|
committer | Anthony G. Basile <blueness@gentoo.org> | 2017-02-25 14:59:19 -0500 |
commit | 90a8c95446b345cc9b388fdb30866e1cb77fe711 (patch) | |
tree | 0e2499b2ff23b3853ab759cc2c8970a3a46c6c4c /src/udev | |
parent | 5bab4d8de0dcbb8e2e7d4d5125b4aea1652a0d60 (diff) |
src/udev/udev-rules.c: fix global properties, issue #142
An important hunk was lost when merging systemd commit
adeba500 leading to broken global properties, issue #142.
This commit fixes this bug.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Diffstat (limited to 'src/udev')
-rw-r--r-- | src/udev/udev-rules.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c index e2bb99ca7d..c4f422187f 100644 --- a/src/udev/udev-rules.c +++ b/src/udev/udev-rules.c @@ -1963,7 +1963,18 @@ int udev_rules_apply_to_event(struct udev_rules *rules, const char *value; value = udev_device_get_property_value(event->dev, key_name); - if (value == NULL) + + /* check global properties */ + if (!value && properties_list) { + struct udev_list_entry *list_entry; + + list_entry = udev_list_get_entry(properties_list); + list_entry = udev_list_entry_get_by_name(list_entry, key_name); + if (list_entry != NULL) + value = udev_list_entry_get_value(list_entry); + } + + if (!value) value = ""; if (match_key(rules, cur, value)) goto nomatch; |