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

Commit 2d7bc584 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Camera: Avoid possible deadlock when closing advanced extension...

Merge "Camera: Avoid possible deadlock when closing advanced extension session" into sc-qpr1-dev am: 00c890cd

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

Change-Id: Ie77645540b5cd01e6fa44316111bc364078baaad
parents 00da43be 00c890cd
Loading
Loading
Loading
Loading
+34 −42
Original line number Diff line number Diff line
@@ -873,7 +873,6 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
        @Override
        public int submitBurst(List<Request> requests, IRequestCallback callback) {
            int seqId = -1;
            synchronized (mInterfaceLock) {
            try {
                CaptureCallbackHandler captureCallback = new CaptureCallbackHandler(callback);
                ArrayList<CaptureRequest> captureRequests = new ArrayList<>();
@@ -888,7 +887,6 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
            } catch (IllegalStateException e) {
                Log.e(TAG, "Capture session closed!");
            }
            }

            return seqId;
        }
@@ -896,7 +894,6 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
        @Override
        public int setRepeating(Request request, IRequestCallback callback) {
            int seqId = -1;
            synchronized (mInterfaceLock) {
            try {
                CaptureRequest repeatingRequest = initializeCaptureRequest(mCameraDevice,
                            request, mCameraConfigMap);
@@ -908,14 +905,12 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
            } catch (IllegalStateException e) {
                Log.e(TAG, "Capture session closed!");
            }
            }

            return seqId;
        }

        @Override
        public void abortCaptures() {
            synchronized (mInterfaceLock) {
            try {
                mCaptureSession.abortCaptures();
            } catch (CameraAccessException e) {
@@ -924,11 +919,9 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
                Log.e(TAG, "Capture session closed!");
            }
        }
        }

        @Override
        public void stopRepeating() {
            synchronized (mInterfaceLock) {
            try {
                mCaptureSession.stopRepeating();
            } catch (CameraAccessException e) {
@@ -938,7 +931,6 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
            }
        }
    }
    }

    private static CaptureRequest initializeCaptureRequest(CameraDevice cameraDevice,
            Request request, HashMap<Surface, CameraOutputConfig> surfaceIdMap)