Move wpa_s freeing into wpa_supplicant_deinit_iface()
All wpa_supplicant_deinit_iface() callers ended up freeing wpa_s immediately after this call. Move os_free(wpa_s) into the deinit function to share the same call and make the deinit sequence clearer. Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
754632c965
commit
18e00b5e4d
1 changed files with 2 additions and 3 deletions
|
@ -3055,6 +3055,8 @@ static void wpa_supplicant_deinit_iface(struct wpa_supplicant *wpa_s,
|
||||||
wpa_config_free(wpa_s->conf);
|
wpa_config_free(wpa_s->conf);
|
||||||
wpa_s->conf = NULL;
|
wpa_s->conf = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
os_free(wpa_s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -3105,14 +3107,12 @@ struct wpa_supplicant * wpa_supplicant_add_iface(struct wpa_global *global,
|
||||||
wpa_printf(MSG_DEBUG, "Failed to add interface %s",
|
wpa_printf(MSG_DEBUG, "Failed to add interface %s",
|
||||||
iface->ifname);
|
iface->ifname);
|
||||||
wpa_supplicant_deinit_iface(wpa_s, 0, 0);
|
wpa_supplicant_deinit_iface(wpa_s, 0, 0);
|
||||||
os_free(wpa_s);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Notify the control interfaces about new iface */
|
/* Notify the control interfaces about new iface */
|
||||||
if (wpas_notify_iface_added(wpa_s)) {
|
if (wpas_notify_iface_added(wpa_s)) {
|
||||||
wpa_supplicant_deinit_iface(wpa_s, 1, 0);
|
wpa_supplicant_deinit_iface(wpa_s, 1, 0);
|
||||||
os_free(wpa_s);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3165,7 +3165,6 @@ int wpa_supplicant_remove_iface(struct wpa_global *global,
|
||||||
if (global->p2p_invite_group == wpa_s)
|
if (global->p2p_invite_group == wpa_s)
|
||||||
global->p2p_invite_group = NULL;
|
global->p2p_invite_group = NULL;
|
||||||
wpa_supplicant_deinit_iface(wpa_s, 1, terminate);
|
wpa_supplicant_deinit_iface(wpa_s, 1, terminate);
|
||||||
os_free(wpa_s);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue