From 8bbe85787c4727a468e00fb83e28e963e70a679b Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Tue, 3 Jul 2018 15:45:29 -0500 Subject: [PATCH] device: Fix memory leak when aborting a connection ==1058== 231 (32 direct, 199 indirect) bytes in 1 blocks are definitely lost in loss record 10 of 10 ==1058== at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==1058== by 0x452472: l_malloc (util.c:62) ==1058== by 0x456324: l_settings_new (settings.c:83) ==1058== by 0x427D45: storage_network_open (storage.c:262) ==1058== by 0x42806C: network_settings_load (network.c:75) ==1058== by 0x428C2F: network_autoconnect (network.c:490) ==1058== by 0x4104E9: device_autoconnect_next (device.c:194) ==1058== by 0x410E38: device_set_scan_results (device.c:393) ==1058== by 0x410EFA: new_scan_results (device.c:414) ==1058== by 0x424A6D: scan_finished (scan.c:1012) ==1058== by 0x424B88: get_scan_done (scan.c:1038) ==1058== by 0x45DC67: destroy_request (genl.c:134) --- src/device.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/device.c b/src/device.c index 3ac753bd..328d206c 100644 --- a/src/device.c +++ b/src/device.c @@ -566,6 +566,7 @@ static void device_reset_connection_state(struct device *device) return; if (device->state == DEVICE_STATE_CONNECTED || + device->state == DEVICE_STATE_CONNECTING || device->state == DEVICE_STATE_ROAMING) network_disconnected(network);