diff options
author | Denis Kenzior <denkenz@gmail.com> | 2010-06-24 20:51:59 -0500 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2010-06-24 20:54:36 -0500 |
commit | 7f1a923ebf6cf36f7459f1ea2aedec4b301bbdb1 (patch) | |
tree | dbb763ce7e720ca98037db26017b158acd826939 | |
parent | 17de318c768cd8c715d147b5640d73a6c4896ca6 (diff) | |
download | ofono-7f1a923ebf6cf36f7459f1ea2aedec4b301bbdb1.tar.bz2 |
hso: Don't query tech if not registered or roaming
{NetworkRegistration} [/hso0] LocationAreaCode = 34591
{NetworkRegistration} [/hso0] CellId = 5903759
{NetworkRegistration} [/hso0] Strength = 32
{NetworkRegistration} [/hso0] Strength = 22
{PrimaryDataContext} [/hso0/primarycontext1] Settings =
dbus.Dictionary({}, signature=dbus.Signature('sv'), variant_level=1)
{PrimaryDataContext} [/hso0/primarycontext1] Active = 0
{DataConnectionManager} [/hso0] Attached = 0
{NetworkRegistration} [/hso0] Status = searching
{NetworkRegistration} [/hso0] Technology = umts <--- Oops
{NetworkOperator} [/hso0/operator/26201] Status = available
{NetworkRegistration} [/hso0] Name =
{NetworkRegistration} [/hso0] Status = registered
{NetworkRegistration} [/hso0] LocationAreaCode = 35342
{NetworkRegistration} [/hso0] CellId = 5903759
{NetworkRegistration} [/hso0] Technology = edge
-rw-r--r-- | drivers/atmodem/network-registration.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/atmodem/network-registration.c b/drivers/atmodem/network-registration.c index 630e8ea6..b8ec012c 100644 --- a/drivers/atmodem/network-registration.c +++ b/drivers/atmodem/network-registration.c @@ -867,6 +867,9 @@ static void creg_notify(GAtResult *result, gpointer user_data) &lac, &ci, &tech, nd->vendor) == FALSE) return; + if (status != 1 && status != 5) + goto notify; + switch (nd->vendor) { case OFONO_VENDOR_OPTION_HSO: tq = g_new0(struct tech_query, 1); @@ -890,6 +893,7 @@ static void creg_notify(GAtResult *result, gpointer user_data) if ((status == 1 || status == 5) && tech == -1) tech = nd->tech; +notify: ofono_netreg_status_notify(netreg, status, lac, ci, tech); } |