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

Commit c486a70b authored by Sudheer Shanka's avatar Sudheer Shanka Committed by Automerger Merge Worker
Browse files

Merge "Pass in the correct binder token when calling AMS.finishReceiver()."...

Merge "Pass in the correct binder token when calling AMS.finishReceiver()." into udc-dev am: 0ffb527e

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22734030



Change-Id: Icdccb414a33a899cf1115ac89b62174afdc63cd9
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 4b15d659 0ffb527e
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -1668,10 +1668,13 @@ public final class LoadedApk {
    static final class ReceiverDispatcher {

        final static class InnerReceiver extends IIntentReceiver.Stub {
            final IApplicationThread mApplicationThread;
            final WeakReference<LoadedApk.ReceiverDispatcher> mDispatcher;
            final LoadedApk.ReceiverDispatcher mStrongRef;

            InnerReceiver(LoadedApk.ReceiverDispatcher rd, boolean strong) {
            InnerReceiver(IApplicationThread thread, LoadedApk.ReceiverDispatcher rd,
                    boolean strong) {
                mApplicationThread = thread;
                mDispatcher = new WeakReference<LoadedApk.ReceiverDispatcher>(rd);
                mStrongRef = strong ? rd : null;
            }
@@ -1718,7 +1721,8 @@ public final class LoadedApk {
                        if (extras != null) {
                            extras.setAllowFds(false);
                        }
                        mgr.finishReceiver(this, resultCode, data, extras, false, intent.getFlags());
                        mgr.finishReceiver(mApplicationThread.asBinder(), resultCode, data,
                                extras, false, intent.getFlags());
                    } catch (RemoteException e) {
                        throw e.rethrowFromSystemServer();
                    }
@@ -1825,7 +1829,7 @@ public final class LoadedApk {
            }

            mAppThread = appThread;
            mIIntentReceiver = new InnerReceiver(this, !registered);
            mIIntentReceiver = new InnerReceiver(mAppThread, this, !registered);
            mReceiver = receiver;
            mContext = context;
            mActivityThread = activityThread;