X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Fdevice.c;h=d17b2dfdd7410b30d5ef725399969022c3c565c4;hb=bdd13f6be4b588568683a1ab54f421fc6a636dbb;hp=4ff7c37238a566b641e0ae87bb9f300dc6a156f7;hpb=9670d583d381d4c2c7f4d80de63bee7ad54fef44;p=elogind.git diff --git a/src/core/device.c b/src/core/device.c index 4ff7c3723..d17b2dfdd 100644 --- a/src/core/device.c +++ b/src/core/device.c @@ -268,7 +268,7 @@ static int device_update_unit(Manager *m, struct udev_device *dev, const char *p memcpy(e, w, l); e[l] = 0; - n = unit_name_mangle(e); + n = unit_name_mangle(e, MANGLE_NOGLOB); if (!n) { r = -ENOMEM; goto fail; @@ -534,7 +534,7 @@ static int device_enumerate(Manager *m) { if (r < 0) goto fail; - r = sd_event_add_io(m->event, udev_monitor_get_fd(m->udev_monitor), EPOLLIN, device_dispatch_io, m, &m->udev_event_source); + r = sd_event_add_io(m->event, &m->udev_event_source, udev_monitor_get_fd(m->udev_monitor), EPOLLIN, device_dispatch_io, m); if (r < 0) goto fail; } @@ -549,6 +549,10 @@ static int device_enumerate(Manager *m) { if (r < 0) goto fail; + r = udev_enumerate_add_match_is_initialized(e); + if (r < 0) + goto fail; + r = udev_enumerate_scan_devices(e); if (r < 0) goto fail; @@ -649,7 +653,6 @@ const UnitVTable device_vtable = { .sub_state_to_string = device_sub_state_to_string, .bus_interface = "org.freedesktop.systemd1.Device", - .bus_changing_properties = bus_device_changing_properties, .bus_vtable = bus_device_vtable, .following = device_following,