From: Tomasz Gregorek <[email protected]>

Check if there is a timer running already and remove it before
creating a new one. This will prevent calling reopen_callback() more
than if mbm_disconnect() is called more than once.
---
 plugins/mbm.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/plugins/mbm.c b/plugins/mbm.c
index 38583ac..4048f6a 100644
--- a/plugins/mbm.c
+++ b/plugins/mbm.c
@@ -351,6 +351,9 @@ static void mbm_disconnect(gpointer user_data)
        data->data_port = NULL;
 
        /* Waiting for the +CGEV: ME DEACT might also work */
+       if (data->reopen_source > 0)
+               g_source_remove(data->reopen_source);
+
        data->reopen_source = g_timeout_add_seconds(1, reopen_callback, modem);
 }
 
-- 
1.7.1

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

Reply via email to