When connman_network_set_connected() is called with 'connected=FALSE',
network->connected is already FALSE, causing signal not being sent.
So, in __connman_network_disconnet() instead of directly assigning
network->connected to FALSE, call connman_network_set_connected()
which will deal with properly setting it and sending the signal.
err = network->driver->disconnect(network);
if (err == 0) {
- network->connected = FALSE;
+ connman_network_set_connected(network, FALSE);
set_connected(network);
}