diff options
author | Sam Leffler <sleffler@google.com> | 2009-10-19 10:57:42 -0700 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-10-20 22:08:18 +0200 |
commit | e7cc2b808c75dc02e3948d220b0ffd231f2634d3 (patch) | |
tree | 162c8e46e47fe29b15f56c283ada892672fac5b1 /src | |
parent | 14921d074bd7f6d47bce8ad955baf088446e64ac (diff) | |
download | connman-e7cc2b808c75dc02e3948d220b0ffd231f2634d3.tar.gz connman-e7cc2b808c75dc02e3948d220b0ffd231f2634d3.tar.bz2 connman-e7cc2b808c75dc02e3948d220b0ffd231f2634d3.zip |
Update services sorting after a signal strength change
Diffstat (limited to 'src')
-rw-r--r-- | src/service.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/service.c b/src/service.c index 7c26606e..7986cd42 100644 --- a/src/service.c +++ b/src/service.c @@ -2299,6 +2299,7 @@ void __connman_service_update_from_network(struct connman_network *network) enum connman_service_mode mode; connman_uint8_t strength, value; connman_bool_t roaming; + GSequenceIter *iter; service = __connman_service_lookup_from_network(network); if (service == NULL) @@ -2324,6 +2325,10 @@ roaming: roaming_changed(service); + iter = g_hash_table_lookup(service_hash, service->identifier); + if (iter != NULL) + g_sequence_sort_changed(iter, service_compare, NULL); + done: if (service->type != CONNMAN_SERVICE_TYPE_CELLULAR) return; |