gsm: only use CREG responses for authoritative registration state
For now...
This commit is contained in:
@@ -1475,6 +1475,12 @@ reg_state_changed (MMSerialPort *port,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Don't update reg state on CGREG responses since for many devices it's
|
||||||
|
* unclear what that registration state that actually reflects. We'll
|
||||||
|
* take CGREG registration state into account later when we have a more
|
||||||
|
* consistent way of handling it.
|
||||||
|
*/
|
||||||
|
if (cgreg == FALSE) {
|
||||||
if (reg_status_updated (self, state, NULL)) {
|
if (reg_status_updated (self, state, NULL)) {
|
||||||
/* If registration is finished (either registered or failed) but the
|
/* If registration is finished (either registered or failed) but the
|
||||||
* registration query hasn't completed yet, just remove the timeout and
|
* registration query hasn't completed yet, just remove the timeout and
|
||||||
@@ -1485,6 +1491,7 @@ reg_state_changed (MMSerialPort *port,
|
|||||||
priv->pending_reg_id = 0;
|
priv->pending_reg_id = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
idx = cgreg ? 1 : 0;
|
idx = cgreg ? 1 : 0;
|
||||||
priv->lac[idx] = lac;
|
priv->lac[idx] = lac;
|
||||||
|
Reference in New Issue
Block a user