const char *__connman_profile_active_ident(void);
const char *__connman_profile_active_path(void);
-void __connman_profile_changed(void);
+void __connman_profile_changed(gboolean delayed);
#include <connman/log.h>
return FALSE;
}
-void __connman_profile_changed(void)
+void __connman_profile_changed(gboolean delayed)
{
DBG("");
return;
}
+ if (delayed == FALSE) {
+ services_changed(NULL);
+ return;
+ }
+
changed_timeout = g_timeout_add_seconds(2, services_changed, NULL);
}
g_sequence_move(src, dst);
- __connman_profile_changed();
+ __connman_profile_changed(FALSE);
return g_dbus_create_reply(msg, DBUS_TYPE_INVALID);
}
service->path = NULL;
if (path != NULL) {
- __connman_profile_changed();
+ __connman_profile_changed(TRUE);
g_dbus_unregister_interface(connection, path,
CONNMAN_SERVICE_INTERFACE);
g_sequence_sort_changed(iter, service_compare, NULL);
- __connman_profile_changed();
+ __connman_profile_changed(FALSE);
return 0;
}
if (iter != NULL)
g_sequence_sort_changed(iter, service_compare, NULL);
- __connman_profile_changed();
+ __connman_profile_changed(FALSE);
return 0;
}
if (iter != NULL)
g_sequence_sort_changed(iter, service_compare, NULL);
- __connman_profile_changed();
+ __connman_profile_changed(TRUE);
return 0;
}
if (service->path != NULL) {
update_from_network(service, network);
- __connman_profile_changed();
+ __connman_profile_changed(TRUE);
__connman_service_put(service);
service = NULL;