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

Commit e6392025 authored by Siarhei Vishniakou's avatar Siarhei Vishniakou Committed by Android (Google) Code Review
Browse files

Revert "Ensure dispose is always called on looper thread -- try 2"

This reverts commit 5a6537eb.

Reason for revert: broke ClipboardOverlayControllerTest, see b/412412622
Bug: 376713684

Change-Id: I8da4270fb06204ef24d6eb87a1fa9f5e02278aa7
parent 5a6537eb
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -45,7 +45,7 @@ public abstract class InputEventReceiver {
    // We keep references to the input channel and message queue objects here so that
    // they are not GC'd while the native peer of the receiver is using them.
    private InputChannel mInputChannel;
    private Looper mLooper;
    private MessageQueue mMessageQueue;

    // Map from InputEvent sequence numbers to dispatcher sequence numbers.
    private final SparseIntArray mSeqMap = new SparseIntArray();
@@ -76,9 +76,9 @@ public abstract class InputEventReceiver {
        }

        mInputChannel = inputChannel;
        mLooper = looper;
        mMessageQueue = looper.getQueue();
        mReceiverPtr = nativeInit(new WeakReference<InputEventReceiver>(this),
                mInputChannel, mLooper.getQueue());
                mInputChannel, mMessageQueue);

        mCloseGuard.open("InputEventReceiver.dispose");
    }
@@ -108,9 +108,6 @@ public abstract class InputEventReceiver {
     * Must be called on the same Looper thread to which the receiver is attached.
     */
    public void dispose() {
        if (Thread.currentThread() != mLooper.getThread()) {
            throw new IllegalStateException("Must call dispose() on the Looper thread");
        }
        dispose(false);
    }

@@ -131,7 +128,7 @@ public abstract class InputEventReceiver {
            mInputChannel.dispose();
            mInputChannel = null;
        }
        mLooper = null;
        mMessageQueue = null;
        Reference.reachabilityFence(this);
    }

+1 −0
Original line number Diff line number Diff line
@@ -155,6 +155,7 @@ class InputEventSenderAndReceiverTest {
        sender.assertReceivedFinishedSignal(seq, handled = true)

        // Clean up
        crashingReceiver.dispose()
        sender.dispose()
        receiverThread.quitSafely()
    }