change the state to DEAD when lcp finishes.  This prevents us from
calling our disconnect function again if we are already dead.
---
 gatchat/gatppp.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/gatchat/gatppp.c b/gatchat/gatppp.c
index 70669b0..dd6d84d 100644
--- a/gatchat/gatppp.c
+++ b/gatchat/gatppp.c
@@ -186,9 +186,6 @@ static inline void ppp_enter_phase(GAtPPP *ppp, enum 
ppp_phase phase)
 {
        g_print("Entering new phase: %d\n", phase);
        ppp->phase = phase;
-
-       if (phase == PPP_PHASE_DEAD)
-               ppp_dead(ppp);
 }
 
 void ppp_set_auth(GAtPPP *ppp, const guint8* auth_data)
@@ -290,6 +287,10 @@ void ppp_lcp_down_notify(GAtPPP *ppp)
 
 void ppp_lcp_finished_notify(GAtPPP *ppp)
 {
+       if (ppp->phase == PPP_PHASE_DEAD)
+               return;
+
+       ppp_enter_phase(ppp, PPP_PHASE_DEAD);
        ppp_dead(ppp);
 }
 
-- 
1.6.6.1

_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to