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

Commit d8a124b7 authored by Hongguang's avatar Hongguang
Browse files

Fix Filter callback race condition

Bug: 225107597
Test: stress test
Test: atest android.media.tv.tuner.cts
Change-Id: I064095338009cdda8fc03780001b0b0534da4508
parent 27865be0
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -560,6 +560,11 @@ public class Filter implements AutoCloseable {
     */
    @Override
    public void close() {
        synchronized (mCallbackLock) {
            mCallback = null;
            mExecutor = null;
        }

        synchronized (mLock) {
            if (mIsClosed) {
                return;
@@ -568,8 +573,6 @@ public class Filter implements AutoCloseable {
            if (res != Tuner.RESULT_SUCCESS) {
                TunerUtils.throwExceptionForResult(res, "Failed to close filter.");
            } else {
                mCallback = null;
                mExecutor = null;
                mIsStarted = false;
                mIsClosed = true;
            }