diff options
| -rw-r--r-- | services/java/com/android/server/WifiService.java | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/services/java/com/android/server/WifiService.java b/services/java/com/android/server/WifiService.java index 2cae48b24159..5c38e632cc3f 100644 --- a/services/java/com/android/server/WifiService.java +++ b/services/java/com/android/server/WifiService.java @@ -640,8 +640,11 @@ public class WifiService extends IWifiManager.Stub { */ long ident = Binder.clearCallingIdentity(); - handleWifiToggled(enable); - Binder.restoreCallingIdentity(ident); + try { + handleWifiToggled(enable); + } finally { + Binder.restoreCallingIdentity(ident); + } if (enable) { if (!mIsReceiverRegistered) { @@ -838,12 +841,15 @@ public class WifiService extends IWifiManager.Stub { enforceAccessPermission(); int userId = UserHandle.getCallingUserId(); long ident = Binder.clearCallingIdentity(); - int currentUser = ActivityManager.getCurrentUser(); - Binder.restoreCallingIdentity(ident); - if (userId != currentUser) { - return new ArrayList<ScanResult>(); - } else { - return mWifiStateMachine.syncGetScanResultsList(); + try { + int currentUser = ActivityManager.getCurrentUser(); + if (userId != currentUser) { + return new ArrayList<ScanResult>(); + } else { + return mWifiStateMachine.syncGetScanResultsList(); + } + } finally { + Binder.restoreCallingIdentity(ident); } } |