summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorDaniel Wagner <daniel.wagner@bmw-carit.de>2011-08-04 17:35:37 +0200
committerSamuel Ortiz <sameo@linux.intel.com>2011-08-04 18:05:24 +0200
commit218691d56e12fe16acb52d1b35ccf1a759881d52 (patch)
treeccb0e6977e7107acfa6b1b4240c6a290e8e54818 /plugins
parent76359ac3fd89af2002afbf0cf1ebe0aa222bcff8 (diff)
downloadconnman-218691d56e12fe16acb52d1b35ccf1a759881d52.tar.gz
connman-218691d56e12fe16acb52d1b35ccf1a759881d52.tar.bz2
connman-218691d56e12fe16acb52d1b35ccf1a759881d52.zip
wifi: network_remove: Clear network pointer in wifi
When a network is destroyed we also have to remove the pointer from the wifi data structure. connmand[25303]: plugins/wifi.c:network_remove() network 0x69c350 connmand[25303]: src/network.c:connman_network_unref() network 0x69c350 name bmwnet02 refcount 1 connmand[25303]: src/network.c:connman_network_unref() network 0x69c350 name bmwnet02 refcount 0 connmand[25303]: src/network.c:network_destruct() network 0x69c350 name XXXXX [...] connmand[25303]: plugins/wifi.c:interface_state() wifi 0x699d60 interface state 1 connmand[25303]: plugins/wifi.c:is_idle() state 9 connmand[25303]: src/network.c:connman_network_set_associating() network 0x69c350 associating 0 connmand[25303]: src/network.c:connman_network_set_connected() network 0x69c350 connected 0 Fixes BMC#22307
Diffstat (limited to 'plugins')
-rw-r--r--plugins/wifi.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/plugins/wifi.c b/plugins/wifi.c
index 8b7a97ce..469ec67b 100644
--- a/plugins/wifi.c
+++ b/plugins/wifi.c
@@ -333,7 +333,19 @@ static int network_probe(struct connman_network *network)
static void network_remove(struct connman_network *network)
{
+ struct connman_device *device = connman_network_get_device(network);
+ struct wifi_data *wifi;
+
DBG("network %p", network);
+
+ wifi = connman_device_get_data(device);
+ if (wifi == NULL)
+ return;
+
+ if (wifi->network != network)
+ return;
+
+ wifi->network = NULL;
}
static void connect_callback(int result, GSupplicantInterface *interface,