chiark / gitweb /
core,logind,networkd: check for udev device initialization via enumeration matches
[elogind.git] / src / core / device.c
index c93c94726de5ad34de6318290d3b12e097b7a965..72d98aea722cadaf0e18d669d556f78bae5e1b12 100644 (file)
@@ -303,14 +303,6 @@ static int device_process_new_device(Manager *m, struct udev_device *dev) {
 
         assert(m);
 
-#if 0
-        /* FIXME: this is always false for devices received from udev_monitor */
-
-        /* Don't pick up devices before udev finished initialization for them */
-        if (!udev_device_get_is_initialized(dev))
-                return 0;
-#endif
-
         sysfs = udev_device_get_syspath(dev);
         if (!sysfs)
                 return 0;
@@ -557,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;