diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mm-broadband-modem.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index cdaf83f9..c6f55dc7 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -5727,13 +5727,15 @@ enable_location_gathering (MMIfaceModemLocation *self, user_data, enable_location_gathering); - /* 3GPP modems need to re-run registration checks, so that we get up to date - * LAC/CI location information. Note that we don't care for when the - * registration checks get finished. */ - if (mm_iface_modem_is_3gpp (MM_IFACE_MODEM (self))) { - /* Re-run registration to get update LAC/CI */ + /* 3GPP modems need to re-run registration checks when enabling the 3GPP + * location source, so that we get up to date LAC/CI location information. + * Note that we don't care for when the registration checks get finished. + */ + if (source == MM_MODEM_LOCATION_SOURCE_3GPP_LAC_CI && + mm_iface_modem_is_3gpp (MM_IFACE_MODEM (self))) { + /* Reload registration to get LAC/CI */ mm_iface_modem_3gpp_run_all_registration_checks (MM_IFACE_MODEM_3GPP (self), NULL, NULL); - /* Reload operator, to get MCC/MNC */ + /* Reload operator to get MCC/MNC */ mm_iface_modem_3gpp_reload_current_operator (MM_IFACE_MODEM_3GPP (self)); } |