chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
a1525d1
)
use devnode() for $name not sysname(), device nodes might be in a subdirectory
author
Kay Sievers
<kay.sievers@vrfy.org>
Mon, 23 Jan 2012 03:44:35 +0000
(
04:44
+0100)
committer
Kay Sievers
<kay.sievers@vrfy.org>
Mon, 23 Jan 2012 03:44:35 +0000
(
04:44
+0100)
src/udev-event.c
patch
|
blob
|
history
diff --git
a/src/udev-event.c
b/src/udev-event.c
index f0b9548f3dc07e926192b402b2e868d0eaf9e485..227c186236ad487d56d02ddab69d011d87d42cea 100644
(file)
--- a/
src/udev-event.c
+++ b/
src/udev-event.c
@@
-346,15
+346,18
@@
subst:
if (udev_device_get_devnode(dev) != NULL)
l = util_strpcpy(&s, l, udev_device_get_devnode(dev));
break;
if (udev_device_get_devnode(dev) != NULL)
l = util_strpcpy(&s, l, udev_device_get_devnode(dev));
break;
- case SUBST_NAME:
+ case SUBST_NAME: {
+ size_t devlen = strlen(udev_get_dev_path(event->udev))+1;
+
if (event->name != NULL) {
l = util_strpcpy(&s, l, event->name);
if (event->name != NULL) {
l = util_strpcpy(&s, l, event->name);
- dbg(event->udev, "substitute name '%s'\n", event->name);
+ dbg(event->udev, "substitute
custom
name '%s'\n", event->name);
} else {
} else {
- l = util_strpcpy(&s, l,
udev_device_get_sysname(dev)
);
- dbg(event->udev, "substitute
sysname '%s'\n", udev_device_get_sysname(dev)
);
+ l = util_strpcpy(&s, l,
&udev_device_get_devnode(dev)[devlen]
);
+ dbg(event->udev, "substitute
name'%s'\n", &udev_device_get_devnode(dev)[devlen]
);
}
break;
}
break;
+ }
case SUBST_LINKS: {
size_t devlen = strlen(udev_get_dev_path(event->udev))+1;
struct udev_list_entry *list_entry;
case SUBST_LINKS: {
size_t devlen = strlen(udev_get_dev_path(event->udev))+1;
struct udev_list_entry *list_entry;
@@
-928,7
+931,7
@@
int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules,
}
}
}
}
- if (major(udev_device_get_devnum(dev))
!=
0) {
+ if (major(udev_device_get_devnum(dev))
>
0) {
/* remove/update possible left-over symlinks from old database entry */
if (event->dev_db != NULL)
udev_node_update_old_links(dev, event->dev_db);
/* remove/update possible left-over symlinks from old database entry */
if (event->dev_db != NULL)
udev_node_update_old_links(dev, event->dev_db);