diff options
| author | Yin-Chia Yeh <yinchiayeh@google.com> | 2019-06-25 10:41:56 -0700 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2019-06-25 10:41:56 -0700 |
| commit | cff1749e5283454c5cd2aaa19b123bee8cebf473 (patch) | |
| tree | a4db244eb2595d7e2ae082247caceb07556f9cc3 /core/java | |
| parent | 837dc67d30df8041a3833f081032020157d0bb6c (diff) | |
| parent | e8ff13376f86de44a747aec8d8ba9c1c5b3f1a07 (diff) | |
Merge "Camera: block session init callback until ctor returns" into qt-dev am: 0e1eecd080 am: 0aa57fe073
am: e8ff13376f
Change-Id: I2f5a51b279a67b53a5f0fc5ac0632ce0bf568595
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/hardware/camera2/impl/CameraConstrainedHighSpeedCaptureSessionImpl.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/core/java/android/hardware/camera2/impl/CameraConstrainedHighSpeedCaptureSessionImpl.java b/core/java/android/hardware/camera2/impl/CameraConstrainedHighSpeedCaptureSessionImpl.java index 3494a7f2801e..eb331373e691 100644 --- a/core/java/android/hardware/camera2/impl/CameraConstrainedHighSpeedCaptureSessionImpl.java +++ b/core/java/android/hardware/camera2/impl/CameraConstrainedHighSpeedCaptureSessionImpl.java @@ -25,6 +25,7 @@ import android.hardware.camera2.params.OutputConfiguration; import android.hardware.camera2.params.StreamConfigurationMap; import android.hardware.camera2.utils.SurfaceUtils; import android.os.Handler; +import android.os.ConditionVariable; import android.util.Range; import android.view.Surface; @@ -51,6 +52,7 @@ public class CameraConstrainedHighSpeedCaptureSessionImpl extends CameraConstrainedHighSpeedCaptureSession implements CameraCaptureSessionCore { private final CameraCharacteristics mCharacteristics; private final CameraCaptureSessionImpl mSessionImpl; + private final ConditionVariable mInitialized = new ConditionVariable(); /** * Create a new CameraCaptureSession. @@ -68,6 +70,7 @@ public class CameraConstrainedHighSpeedCaptureSessionImpl CameraCaptureSession.StateCallback wrapperCallback = new WrapperCallback(callback); mSessionImpl = new CameraCaptureSessionImpl(id, /*input*/null, wrapperCallback, stateExecutor, deviceImpl, deviceStateExecutor, configureSuccess); + mInitialized.open(); } @Override @@ -321,11 +324,13 @@ public class CameraConstrainedHighSpeedCaptureSessionImpl @Override public void onConfigured(CameraCaptureSession session) { + mInitialized.block(); mCallback.onConfigured(CameraConstrainedHighSpeedCaptureSessionImpl.this); } @Override public void onConfigureFailed(CameraCaptureSession session) { + mInitialized.block(); mCallback.onConfigureFailed(CameraConstrainedHighSpeedCaptureSessionImpl.this); } |
