Bug fix(1807910): media recorder crash due to the use of locked camera object (last part)
- remove an unused Camera constructor
- add a check on the argument in Camera::create() method
diff --git a/libs/ui/Camera.cpp b/libs/ui/Camera.cpp
index 0fba82c..41577c4 100644
--- a/libs/ui/Camera.cpp
+++ b/libs/ui/Camera.cpp
@@ -64,22 +64,16 @@
     init();
 }
 
-Camera::Camera(const sp<ICamera>& camera)
-{
-    init();
-    // connect this client to existing camera remote
-    if (camera->connect(this) == NO_ERROR) {
-        mStatus = NO_ERROR;
-        mCamera = camera;
-        camera->asBinder()->linkToDeath(this);
-    }
-}
-
-
+// construct a camera client from an existing camera remote
 sp<Camera> Camera::create(const sp<ICamera>& camera)
 {
+     LOGV("create");
+     if (camera == 0) {
+         LOGE("camera remote is a NULL pointer");
+         return 0;
+     }
+
     sp<Camera> c = new Camera();
-    // connect this client to existing camera remote
     if (camera->connect(c) == NO_ERROR) {
         c->mStatus = NO_ERROR;
         c->mCamera = camera;