From: Daniel Wagner <daniel.wag...@bmw-carit.de> --- src/session.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/src/session.c b/src/session.c index 7e6d2c5..880c7ed 100644 --- a/src/session.c +++ b/src/session.c @@ -276,6 +276,13 @@ static int config_get_string(struct connman_session *session, const char *id, return (*session->config->get_string)(id, key, val); } + +static gint compare_priority(gconstpointer a, gconstpointer b) +{ + const struct connman_session_config *config1 = a; + const struct connman_session_config *config2 = b; + + return config2->priority - config1->priority; } static struct connman_session *session_lookup_by_id(const char *id) @@ -344,12 +351,16 @@ int connman_session_config_register(struct connman_session_config *config) { DBG("name %s", config->name); + config_list = g_slist_insert_sorted(config_list, config, + compare_priority); return 0; } void connman_session_config_unregister(struct connman_session_config *config) { DBG("name %s", config->name); + + config_list = g_slist_remove(config_list, config); } static void cleanup_bearer_info(gpointer data, gpointer user_data) -- 1.7.12.315.g682ce8b _______________________________________________ connman mailing list connman@connman.net http://lists.connman.net/listinfo/connman