summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Robert Greenwalt <robdroid@android.com> 2009-09-19 18:14:32 -0700
committer Robert Greenwalt <robdroid@android.com> 2009-09-19 18:14:32 -0700
commita99f461b98df6b88c6b0fae83b41077dde9a2228 (patch)
tree6a72c849d7ee0bb11e7a967aa664e502b92cf2d4
parent9a24bc563f28d8489c7178b93ff05f02e8b8a893 (diff)
Don't require WAKE_LOCK permission to enable wifi
The process for starting wifi was using a wakelock around a message-pass and this was causing an exception for meer mortals (who don't have WAKE_LOCK permission). bug: 1750535
-rw-r--r--services/java/com/android/server/WifiService.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/java/com/android/server/WifiService.java b/services/java/com/android/server/WifiService.java
index 63bef54b8d85..cc1b6977c806 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());