From 9f14d830472f77b89ed54d1269c741e787ca10c3 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Wed, 14 Dec 2011 14:19:10 -0600 Subject: gsm: treat "no network" error as zero signal for Simple.GetStatus --- src/mm-generic-gsm.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/mm-generic-gsm.c b/src/mm-generic-gsm.c index 6c7b938c..eebdbce1 100644 --- a/src/mm-generic-gsm.c +++ b/src/mm-generic-gsm.c @@ -5777,8 +5777,15 @@ simple_status_got_signal_quality (MMModem *modem, { MMCallbackInfo *info = (MMCallbackInfo *) user_data; GHashTable *properties; + gboolean error_no_network = FALSE; - if (!error) { + /* Treat "no network" as zero strength */ + if (g_error_matches (error, MM_MOBILE_ERROR, MM_MOBILE_ERROR_NO_NETWORK)) { + error_no_network = TRUE; + result = 0; + } + + if (!error || error_no_network) { properties = (GHashTable *) mm_callback_info_get_data (info, SS_HASH_TAG); g_hash_table_insert (properties, "signal_quality", simple_uint_value (result)); } else { -- cgit v1.2.3-70-g09d2