Hi Guillaume, On 06/25/2012 09:19 AM, Guillaume Zajac wrote: > 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. > } > > static void ppp_disconnect(GAtPPPDisconnectReason reason, gpointer user_data) Regards, -Denis