From: Helmut Schaa Date: Wed, 4 Feb 2009 19:55:12 +0000 (+0200) Subject: Fix a segfault in wpa_supplicant_deinit X-Git-Tag: hostap_0_7_0~574 X-Git-Url: http://www.project-moonshot.org/gitweb/?a=commitdiff_plain;h=81e59f1070f223c4b244a20aa496b79d9cdb5961;p=libeap.git Fix a segfault in wpa_supplicant_deinit If wpa_supplicant is started with -u but the DBus service is already registered wpa_supplicant will bail out. However, it will segfault in wpa_supplicant_deinit because global->drv_priv wasn't allocated yet. Signed-off-by: Helmut Schaa --- diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c index be40654..26dec1b 100644 --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -2199,7 +2199,7 @@ void wpa_supplicant_deinit(struct wpa_global *global) eap_peer_unregister_methods(); - for (i = 0; wpa_supplicant_drivers[i]; i++) { + for (i = 0; wpa_supplicant_drivers[i] && global->drv_priv; i++) { if (!global->drv_priv[i]) continue; wpa_supplicant_drivers[i]->global_deinit(global->drv_priv[i]);