summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Dmitry Dementyev <dementyev@google.com> 2024-10-21 18:52:09 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-10-21 18:52:09 +0000
commit6b3beba5ed2e0a47ee45359af6f99e2360f21d70 (patch)
tree6e602d9df62663c7aadcde628fd9962e94d649ea
parentce91b479d78f95504c30fe0c3828cbc01e5c4024 (diff)
parent185048041e6f9d43c38829c09965e7a4740d2a6a (diff)
Merge "Update checkKeyIntent" into sc-dev
-rw-r--r--services/core/java/com/android/server/accounts/AccountManagerService.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/accounts/AccountManagerService.java b/services/core/java/com/android/server/accounts/AccountManagerService.java
index 36ffc40bf5f7..5f434ee267d4 100644
--- a/services/core/java/com/android/server/accounts/AccountManagerService.java
+++ b/services/core/java/com/android/server/accounts/AccountManagerService.java
@@ -4916,6 +4916,8 @@ public class AccountManagerService
Log.e(TAG, String.format(tmpl, activityName, pkgName, mAccountType));
return false;
}
+ intent.setComponent(targetActivityInfo.getComponentName());
+ bundle.putParcelable(AccountManager.KEY_INTENT, intent);
return true;
} finally {
Binder.restoreCallingIdentity(bid);
@@ -4937,13 +4939,14 @@ public class AccountManagerService
Bundle simulateBundle = p.readBundle();
p.recycle();
Intent intent = bundle.getParcelable(AccountManager.KEY_INTENT);
- if (intent != null && intent.getClass() != Intent.class) {
- return false;
- }
Intent simulateIntent = simulateBundle.getParcelable(AccountManager.KEY_INTENT);
if (intent == null) {
return (simulateIntent == null);
}
+ if (intent.getClass() != Intent.class || simulateIntent.getClass() != Intent.class) {
+ return false;
+ }
+
if (!intent.filterEquals(simulateIntent)) {
return false;
}