Hi Mohamed, On Wed, Dec 08, 2010 at 04:37:12PM -0800, Mohamed Abbas wrote: > Calling __connman_device_decrease_connections from set_connnected > can lead decrease the connections counter twice on disconnect. I guess when being called from __connman_network_disconnect() ?
The patch looks good, I applied it. Thanks. Cheers, Samuel. > --- > src/device.c | 2 ++ > src/network.c | 5 +++-- > 2 files changed, 5 insertions(+), 2 deletions(-) > > diff --git a/src/device.c b/src/device.c > index 667fed6..50f6723 100644 > --- a/src/device.c > +++ b/src/device.c > @@ -250,6 +250,8 @@ int __connman_device_disable(struct connman_device > *device) > return err; > } > > + device->connections = 0; > + > device->powered_pending = FALSE; > device->powered = FALSE; > > diff --git a/src/network.c b/src/network.c > index 0e22522..49ffa73 100644 > --- a/src/network.c > +++ b/src/network.c > @@ -770,8 +770,6 @@ static gboolean set_connected(gpointer user_data) > __connman_device_set_network(network->device, NULL); > network->hidden = FALSE; > > - __connman_device_decrease_connections(network->device); > - > service = __connman_service_lookup_from_network(network); > > __connman_service_indicate_state(service, > @@ -807,6 +805,9 @@ int connman_network_set_connected(struct connman_network > *network, > if (network->connected == connected) > return -EALREADY; > > + if (connected == FALSE) > + __connman_device_decrease_connections(network->device); > + > network->connected = connected; > > set_connected(network); > -- > 1.7.2.3 > > _______________________________________________ > connman mailing list > [email protected] > http://lists.connman.net/listinfo/connman -- Intel Open Source Technology Centre http://oss.intel.com/ _______________________________________________ connman mailing list [email protected] http://lists.connman.net/listinfo/connman
