QCamera2: fix a bug in stateMachine
In previewPicTaking state, when start_recording is called, it
should call startRecording() instead of stopRecording().
Change-Id: I3f2d31ed3c99fe275f74efe720547a38f9920853
diff --git a/QCamera2/HAL/QCameraStateMachine.cpp b/QCamera2/HAL/QCameraStateMachine.cpp
index 42fe32e..3ab835f 100644
--- a/QCamera2/HAL/QCameraStateMachine.cpp
+++ b/QCamera2/HAL/QCameraStateMachine.cpp
@@ -2458,9 +2458,15 @@
break;
case QCAMERA_SM_EVT_START_RECORDING:
{
- rc = m_parent->stopRecording();
- if (rc == NO_ERROR) {
- m_state = QCAMERA_SM_STATE_VIDEO_PIC_TAKING;
+ if (m_parent->isZSLMode()) {
+ ALOGE("%s: cannot handle evt(%d) in state(%d) in ZSL mode",
+ __func__, evt, m_state);
+ rc = INVALID_OPERATION;
+ } else {
+ rc = m_parent->startRecording();
+ if (rc == NO_ERROR) {
+ m_state = QCAMERA_SM_STATE_VIDEO_PIC_TAKING;
+ }
}
result.status = rc;
result.request_api = evt;