Cumulative patch from commit bab6677a3105f15b19b6be4a189e7baf61b4f791

bsb6677 Handle Wi-Fi Display commands more carefully if P2P is disabled
334ec00 Fix Beacon RX before AP setup completion
72e7fb3 nl80211: Fix regression in returning to AP mode after scan

Change-Id: I5d0a74f730d1ed757f8fe9b3402c295bbc3667e5
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index 5323e99..5978568 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -4901,6 +4901,8 @@
 		wpa_printf(MSG_DEBUG, "nl80211: Scan trigger failed: ret=%d "
 			   "(%s)", ret, strerror(-ret));
 		if (drv->hostapd && is_ap_interface(drv->nlmode)) {
+			enum nl80211_iftype old_mode = drv->nlmode;
+
 			/*
 			 * mac80211 does not allow scan requests in AP mode, so
 			 * try to do this in station mode.
@@ -4915,7 +4917,7 @@
 			}
 
 			/* Restore AP mode when processing scan results */
-			drv->ap_scan_as_station = drv->nlmode;
+			drv->ap_scan_as_station = old_mode;
 			ret = 0;
 		} else
 			goto nla_put_failure;