summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorAdrian Roos <roosa@google.com>2015-01-07 22:19:38 +0100
committerAdrian Roos <roosa@google.com>2015-01-07 22:57:49 +0100
commitdb0f76e1d85f8cb878a9540ac1b692636f9fd89e (patch)
tree52cf71407a6a1f35f94ff969f4d064be0c5cfe0f /services
parent230635efe7ffb09d6dc56bfd9193aa1d89c8a898 (diff)
downloadframeworks_base-db0f76e1d85f8cb878a9540ac1b692636f9fd89e.zip
frameworks_base-db0f76e1d85f8cb878a9540ac1b692636f9fd89e.tar.gz
frameworks_base-db0f76e1d85f8cb878a9540ac1b692636f9fd89e.tar.bz2
Directly dispatch USER_REMOVED to LockSettingsService
Bug: 18931518 Change-Id: Ibaf875a06868ae3196115d77eed6874daf2fec16
Diffstat (limited to 'services')
-rw-r--r--services/core/java/com/android/server/LockSettingsService.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/LockSettingsService.java b/services/core/java/com/android/server/LockSettingsService.java
index 11700e9..d8550c7 100644
--- a/services/core/java/com/android/server/LockSettingsService.java
+++ b/services/core/java/com/android/server/LockSettingsService.java
@@ -82,6 +82,7 @@ public class LockSettingsService extends ILockSettings.Stub {
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_USER_ADDED);
filter.addAction(Intent.ACTION_USER_STARTING);
+ filter.addAction(Intent.ACTION_USER_REMOVED);
mContext.registerReceiverAsUser(mBroadcastReceiver, UserHandle.ALL, filter, null, null);
mStorage = new LockSettingsStorage(context, new LockSettingsStorage.Callback() {
@@ -118,6 +119,11 @@ public class LockSettingsService extends ILockSettings.Stub {
} else if (Intent.ACTION_USER_STARTING.equals(intent.getAction())) {
final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0);
mStorage.prefetchUser(userHandle);
+ } else if (Intent.ACTION_USER_REMOVED.equals(intent.getAction())) {
+ final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0);
+ if (userHandle > 0) {
+ removeUser(userHandle);
+ }
}
}
};
@@ -416,10 +422,7 @@ public class LockSettingsService extends ILockSettings.Stub {
return false;
}
- @Override
- public void removeUser(int userId) {
- checkWritePermission(userId);
-
+ private void removeUser(int userId) {
mStorage.removeUser(userId);
final KeyStore ks = KeyStore.getInstance();