diff --git a/services/java/com/android/server/WifiService.java b/services/java/com/android/server/WifiService.java index 63bef54b8d853..cc1b6977c8061 100644 --- a/services/java/com/android/server/WifiService.java +++ b/services/java/com/android/server/WifiService.java @@ -295,7 +295,11 @@ public class WifiService extends IWifiManager.Stub { if (mWifiHandler == null) return false; synchronized (mWifiHandler) { + // caller may not have WAKE_LOCK permission - it's not required here + long ident = Binder.clearCallingIdentity(); sWakeLock.acquire(); + Binder.restoreCallingIdentity(ident); + mLastEnableUid = Binder.getCallingUid(); // set a flag if the user is enabling Wifi while in airplane mode mAirplaneModeOverwridden = (enable && isAirplaneModeOn() && isAirplaneToggleable());