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

Commit bec0a901 authored by Jayant Chowdhary's avatar Jayant Chowdhary Committed by Android (Google) Code Review
Browse files

Merge "camera2: Remove partial result nodes for error frames."

parents ff858046 91e64e2d
Loading
Loading
Loading
Loading
+16 −17
Original line number Diff line number Diff line
@@ -70,30 +70,29 @@ public class FrameNumberTracker {
            int requestType = (int) pair.getValue();
            Boolean removeError = false;
            if (errorFrameNumber == mCompletedFrameNumber[requestType] + 1) {
                mCompletedFrameNumber[requestType] = errorFrameNumber;
                removeError = true;
            } else {
            }
            // The error frame number could have also either been in the pending list or one of the
            // 'other' pending lists.
            if (!mPendingFrameNumbers[requestType].isEmpty()) {
                if (errorFrameNumber == mPendingFrameNumbers[requestType].element()) {
                        mCompletedFrameNumber[requestType] = errorFrameNumber;
                    mPendingFrameNumbers[requestType].remove();
                    removeError = true;
                }
            } else {
                for (int i = 1; i < CaptureRequest.REQUEST_TYPE_COUNT; i++) {
                    int otherType = (requestType + i) % CaptureRequest.REQUEST_TYPE_COUNT;
                        if (!mPendingFrameNumbersWithOtherType[otherType].isEmpty()
                                && errorFrameNumber
                    if (!mPendingFrameNumbersWithOtherType[otherType].isEmpty() && errorFrameNumber
                            == mPendingFrameNumbersWithOtherType[otherType].element()) {
                            mCompletedFrameNumber[requestType] = errorFrameNumber;
                        mPendingFrameNumbersWithOtherType[otherType].remove();
                        removeError = true;
                        break;
                    }
                }
            }
            }
            if (removeError) {
                mCompletedFrameNumber[requestType] = errorFrameNumber;
                mPartialResults.remove(errorFrameNumber);
                iter.remove();
            }
        }