summaryrefslogtreecommitdiffstats
path: root/drivers/atmodem/gprs-context.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/atmodem/gprs-context.c')
-rw-r--r--drivers/atmodem/gprs-context.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/atmodem/gprs-context.c b/drivers/atmodem/gprs-context.c
index c7f681d4..4ddf88e7 100644
--- a/drivers/atmodem/gprs-context.c
+++ b/drivers/atmodem/gprs-context.c
@@ -254,6 +254,13 @@ static void at_gprs_context_remove(struct ofono_gprs_context *gc)
{
struct gprs_context_data *gcd = ofono_gprs_context_get_data(gc);
+ DBG("");
+
+ if (gcd->state != STATE_IDLE) {
+ g_at_ppp_unref(gcd->ppp);
+ g_at_chat_resume(gcd->chat);
+ }
+
ofono_gprs_context_set_data(gc, NULL);
g_free(gcd);
}