Hi Denis,
Dundee is not waiting to receive the NO CARRIER notification
to close the IO channel with oFono so that oFono is trying to
send a NO CARRIER although GAtServer is removed.
---
src/emulator.c | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/src/emulator.c b/src/emulator.c
index c3165eb..cbee6ad 100644
--- a/src/emulator.c
+++ b/src/emulator.c
@@ -101,7 +101,14 @@ static void cleanup_ppp(struct ofono_emulator *em)
em->pns_id = 0;
g_at_server_resume(em->server);
- g_at_server_send_final(em->server, G_AT_SERVER_RESULT_NO_CARRIER);
+
+ /*
+ * If GAtServer IO is lost, GAtServer can have been removed
+ * through emulator disconnect routine.
+ */
+ if (em->server != NULL)
+ g_at_server_send_final(em->server,
+ G_AT_SERVER_RESULT_NO_CARRIER);
If server is NULL then either it should be a global check like before
(prior to proposed patch 1), or you should add a NULL check to
g_at_server_send_final itself.
In this specific case the server is removed during g_at_server_resume(),
so I will add the NULL check into g_at_server_send_final()
}
static void ppp_disconnect(GAtPPPDisconnectReason reason, gpointer
user_data)
Regards,
-Denis
Kind regards,
Guillaume
_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono