From b011c36e39e27febc95a1c669c7ab3e7a240da0e Mon Sep 17 00:00:00 2001 From: Kalle Valo Date: Mon, 13 Jun 2011 11:54:06 +0300 Subject: [PATCH] --- yaml --- r: 259537 b: refs/heads/master c: 98ab5c7755b5cc9e1a8f2a57ccb22eac5e13ec50 h: refs/heads/master i: 259535: 186bd6bd4ed618ecff1757b268c34149c256d1d2 v: v3 --- [refs] | 2 +- .../staging/ath6kl/os/linux/cfg80211.c | 31 +++++++++++-------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index a6975fd8db4f..20e07025761e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c5274ab09747d0ef829f9b8f040756758e5de55c +refs/heads/master: 98ab5c7755b5cc9e1a8f2a57ccb22eac5e13ec50 diff --git a/trunk/drivers/staging/ath6kl/os/linux/cfg80211.c b/trunk/drivers/staging/ath6kl/os/linux/cfg80211.c index d3a774dbb7e8..32e319782f27 100644 --- a/trunk/drivers/staging/ath6kl/os/linux/cfg80211.c +++ b/trunk/drivers/staging/ath6kl/os/linux/cfg80211.c @@ -867,26 +867,31 @@ ar6k_cfg80211_scanComplete_event(struct ar6_softc *ar, int status) AR_DEBUG_PRINTF(ATH_DEBUG_INFO, ("%s: status %d\n", __func__, status)); - if(ar->scan_request) - { - /* Translate data to cfg80211 mgmt format */ - if (ar->arWmi) - wmi_iterate_nodes(ar->arWmi, ar6k_cfg80211_scan_node, ar->wdev->wiphy); + if (!ar->scan_request) + return; + + if ((status == A_ECANCELED) || (status == A_EBUSY)) { + cfg80211_scan_done(ar->scan_request, true); + goto out; + } + + /* Translate data to cfg80211 mgmt format */ + wmi_iterate_nodes(ar->arWmi, ar6k_cfg80211_scan_node, ar->wdev->wiphy); - cfg80211_scan_done(ar->scan_request, - ((status & A_ECANCELED) || (status & A_EBUSY)) ? true : false); + cfg80211_scan_done(ar->scan_request, false); - if(ar->scan_request->n_ssids && - ar->scan_request->ssids[0].ssid_len) { + if(ar->scan_request->n_ssids && + ar->scan_request->ssids[0].ssid_len) { u8 i; for (i = 0; i < ar->scan_request->n_ssids; i++) { - wmi_probedSsid_cmd(ar->arWmi, i+1, DISABLE_SSID_FLAG, - 0, NULL); + wmi_probedSsid_cmd(ar->arWmi, i+1, DISABLE_SSID_FLAG, + 0, NULL); } - } - ar->scan_request = NULL; } + +out: + ar->scan_request = NULL; } static int