diff options
| author | 2010-08-03 15:57:26 -0700 | |
|---|---|---|
| committer | 2010-08-03 15:57:26 -0700 | |
| commit | d152c1c7534a80b84f6b389efa8a410ea359b3eb (patch) | |
| tree | 4ca41aea357563f868b904d91cc7034cc60489fa | |
| parent | 9f6b16a29b62f29496bc652cfec7d6fe9f08c7f4 (diff) | |
| parent | d194f3d68188a0993617ba8cc29d8abd381b6069 (diff) | |
am d194f3d6: Merge "Replace CHECK with a failure return value when mCamera->setParameters() fails if the camera is locked by someone else." into gingerbread
Merge commit 'd194f3d68188a0993617ba8cc29d8abd381b6069' into gingerbread-plus-aosp
* commit 'd194f3d68188a0993617ba8cc29d8abd381b6069':
Replace CHECK with a failure return value when mCamera->setParameters() fails
| -rw-r--r-- | media/libmediaplayerservice/StagefrightRecorder.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp index c40d285532e0..dfddae0317ca 100644 --- a/media/libmediaplayerservice/StagefrightRecorder.cpp +++ b/media/libmediaplayerservice/StagefrightRecorder.cpp @@ -833,7 +833,11 @@ status_t StagefrightRecorder::setupCameraSource() { params.setPreviewSize(mVideoWidth, mVideoHeight); params.setPreviewFrameRate(mFrameRate); String8 s = params.flatten(); - CHECK_EQ(OK, mCamera->setParameters(s)); + if (OK != mCamera->setParameters(s)) { + LOGE("Could not change settings." + " Someone else is using camera %d?", mCameraId); + return -EBUSY; + } CameraParameters newCameraParams(mCamera->getParameters()); // Check on video frame size @@ -854,6 +858,8 @@ status_t StagefrightRecorder::setupCameraSource() { "frame rate is %d", mFrameRate, frameRate); } + // This CHECK is good, since we just passed the lock/unlock + // check earlier by calling mCamera->setParameters(). CHECK_EQ(OK, mCamera->setPreviewDisplay(mPreviewSurface)); IPCThreadState::self()->restoreCallingIdentity(token); return OK; |