Fix devices_init procedure to prevent starting dev before probing
authorHyotaek Shim <hyotaek.shim@samsung.com>
Mon, 13 Aug 2018 12:11:22 +0000 (21:11 +0900)
committerHyotaek Shim <hyotaek.shim@samsung.com>
Tue, 14 Aug 2018 05:25:42 +0000 (14:25 +0900)
Change-Id: I3fac32e208cd6412e0646bbf9c047b2730e9eed9
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
src/core/devices.c

index 8df13be..6dba16c 100644 (file)
@@ -103,23 +103,25 @@ void devices_init(void *data)
 
        DD_LIST_FOREACH_SAFE(dev_head, elem, elem_n, dev) {
                if (dev->probe && dev->probe(data) != 0) {
-                       _E("[%s] probe fail", dev->name);
+                       _E("[%s] Failed to probe", dev->name);
                        DD_LIST_REMOVE(dev_head, dev);
                        continue;
                }
+       }
 
-               _D("[%s] initialize", dev->name);
+       DD_LIST_FOREACH_SAFE(dev_head, elem, elem_n, dev) {
+               _D("[%s] Initialization", dev->name);
                if (dev->init)
                        dev->init(data);
        }
 
        ret = dbus_handle_add_dbus_object(NULL, DEVICED_PATH_CORE, &dbus_interface);
        if (ret < 0)
-               _E("fail to init dbus method(%d)", ret);
+               _E("Failed to init dbus method: ret=%d", ret);
 
        /* register every objects */
        if (dbus_handle_register_dbus_object_all(NULL) < 0)
-               _E("Failed to register dbus method%d", ret);
+               _E("Failed to register dbus method: ret=%d", ret);
 }
 
 void devices_exit(void *data)