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
This commit is contained in:
Denis Kenzior 2010-06-24 20:51:59 -05:00
parent 17de318c76
commit 7f1a923ebf
1 changed files with 4 additions and 0 deletions

View File

@ -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);
}