diff --git a/src/network.c b/src/network.c index 2d48bc7d..80470f31 100644 --- a/src/network.c +++ b/src/network.c @@ -182,6 +182,11 @@ fail: return false; } +void network_disconnected(struct network *network) +{ + network_settings_close(network); +} + /* First 64 entries calculated by 1 / pow(n, 0.3) for n >= 1 */ static const double rankmod_table[] = { 1.0000000000, 0.8122523964, 0.7192230933, 0.6597539554, diff --git a/src/network.h b/src/network.h index 1f11c647..340715f2 100644 --- a/src/network.h +++ b/src/network.h @@ -27,6 +27,7 @@ struct network; bool network_seen(struct network *network); bool network_connected(struct network *network); +void network_disconnected(struct network *network); double network_rankmod(uint32_t type, const char *ssid); struct network *network_create(struct device *device, diff --git a/src/wiphy.c b/src/wiphy.c index bafa18ba..0ac9e5c0 100644 --- a/src/wiphy.c +++ b/src/wiphy.c @@ -218,7 +218,7 @@ static void device_disassociated(struct device *device) struct network *network = device->connected_network; struct l_dbus *dbus = dbus_get_bus(); - network_settings_close(network); + network_disconnected(network); device->connected_bss = NULL; device->connected_network = NULL;