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

Commit 900f1234 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: I1c96c94277f9a860993032f7bb374ff6ac531a0f
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 913922f5 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;