From 4663833e70b3a4d0bdc85e17cc0d62e9b79c3456 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Sat, 19 Sep 2009 04:33:38 -0700 Subject: [PATCH] Fix broken concept of roaming tracking with MBM devices --- plugins/mbm.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/plugins/mbm.c b/plugins/mbm.c index c8e6e95..33616b7 100644 --- a/plugins/mbm.c +++ b/plugins/mbm.c @@ -267,18 +267,22 @@ static void creg_update(struct connman_device *device, int status) { struct mbm_data *data = connman_device_get_data(device); - if (data->creg_status != 1 && data->creg_status != 5 && - (status == 1 || status == 5)) { + if (status != 1 && status != 5) + goto done; + + if (data->network != NULL) { if (status == 5) connman_network_set_roaming(data->network, TRUE); else connman_network_set_roaming(data->network, FALSE); connman_network_set_group(data->network, data->imsi); + } + if (data->creg_status != 1 && data->creg_status != 5) network_ready(device); - } +done: data->creg_status = status; } -- 2.7.4