Replace CHECK with a failure return value when mCamera->setParameters() fails
if the camera is locked by someone else.

bug - 2827892

Change-Id: I217d4a00f04ebd57b557d3faef28787c14f23ea0
diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp
index c40d285..dfddae0 100644
--- a/media/libmediaplayerservice/StagefrightRecorder.cpp
+++ b/media/libmediaplayerservice/StagefrightRecorder.cpp
@@ -833,7 +833,11 @@
     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 @@
              "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;