diff --git a/core/java/android/hardware/camera2/impl/CameraDevice.java b/core/java/android/hardware/camera2/impl/CameraDevice.java index 2c8a5c29c1377..ecc461ec62fd8 100644 --- a/core/java/android/hardware/camera2/impl/CameraDevice.java +++ b/core/java/android/hardware/camera2/impl/CameraDevice.java @@ -335,7 +335,9 @@ public class CameraDevice implements android.hardware.camera2.CameraDevice { mRepeatingRequestId = REQUEST_ID_NONE; // Queue for deletion after in-flight requests finish - mRepeatingRequestIdDeletedList.add(requestId); + if (mCaptureListenerMap.get(requestId) != null) { + mRepeatingRequestIdDeletedList.add(requestId); + } try { mRemoteDevice.cancelRequest(requestId); @@ -367,8 +369,6 @@ public class CameraDevice implements android.hardware.camera2.CameraDevice { } mRepeatingRequestId = REQUEST_ID_NONE; - mRepeatingRequestIdDeletedList.clear(); - mCaptureListenerMap.clear(); } }