diff options
Diffstat (limited to 'src/service.c')
-rw-r--r-- | src/service.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/service.c b/src/service.c index 34c4e479..3092f673 100644 --- a/src/service.c +++ b/src/service.c @@ -1867,8 +1867,6 @@ static struct connman_service *__connman_service_get(const char *identifier) service->profile = g_strdup(__connman_profile_active_ident()); - __connman_storage_load_service(service); - iter = g_sequence_insert_sorted(service_list, service, service_compare, NULL); @@ -1891,13 +1889,15 @@ static int service_register(struct connman_service *service) DBG("path %s", service->path); + __connman_config_provision_service(service); + + __connman_storage_load_service(service); + g_dbus_register_interface(connection, service->path, CONNMAN_SERVICE_INTERFACE, service_methods, service_signals, NULL, service, NULL); - __connman_storage_load_service(service); - iter = g_hash_table_lookup(service_hash, service->identifier); if (iter != NULL) g_sequence_sort_changed(iter, service_compare, NULL); @@ -1966,8 +1966,6 @@ static void setup_ipconfig(struct connman_service *service, int index) connman_ipconfig_set_method(service->ipconfig, CONNMAN_IPCONFIG_METHOD_DHCP); - __connman_storage_load_service(service); - connman_ipconfig_set_data(service->ipconfig, service); connman_ipconfig_set_ops(service->ipconfig, &service_ops); @@ -2245,8 +2243,6 @@ struct connman_service *__connman_service_create_from_network(struct connman_net service_register(service); - __connman_profile_changed(TRUE); - if (service->favorite == TRUE) __connman_service_auto_connect(); |