Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e8d06e71 authored by Dmitry Dementyev's avatar Dmitry Dementyev
Browse files

Update checkKeyIntent

1) Explicityly set IntentComponent after target activity check.
2) Update Intent subclass check.

Bug: 360846772
Test: manual
Flag: EXEMPT bugfix
Change-Id: I36ad0c303fbeb76f2be126fc3c999030c2887616
Merged-In: Ied7961c73299681aa5b523cf3f00fd905893116f
parent e6a2cfe5
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -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,16 @@ public class AccountManagerService
            Bundle simulateBundle = p.readBundle();
            p.recycle();
            Intent intent = bundle.getParcelable(AccountManager.KEY_INTENT);
            if (intent != null && intent.getClass() != Intent.class) {
            if (intent != null) {
                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;
            }