Catch potential RTE from Camera.

I got this one on a Nexus S running CM. So maybe not a real problem in
the wild. But given the amount of errors we see in the wild about camera
not connection, we should revisit and see if any of these errors are
catchable, like this one.

Change-Id: I02421bb6a1b5256bf23c2b5fe81f11a78d02cd57
diff --git a/src/com/android/camera/app/AndroidCameraManagerImpl.java b/src/com/android/camera/app/AndroidCameraManagerImpl.java
index 2385bc1..6cd9c35 100644
--- a/src/com/android/camera/app/AndroidCameraManagerImpl.java
+++ b/src/com/android/camera/app/AndroidCameraManagerImpl.java
@@ -286,7 +286,11 @@
         @TargetApi(Build.VERSION_CODES.JELLY_BEAN)
         private void setAutoFocusMoveCallback(
                 android.hardware.Camera camera, Object cb) {
-            camera.setAutoFocusMoveCallback((AutoFocusMoveCallback) cb);
+            try {
+                camera.setAutoFocusMoveCallback((AutoFocusMoveCallback) cb);
+            } catch (RuntimeException ex) {
+                Log.w(TAG, ex.getMessage());
+            }
         }
 
         private void capture(final CaptureCallbacks cb) {
@@ -551,7 +555,7 @@
 
     private class DispatchThread extends Thread {
 
-        private Queue<Runnable> mJobQueue;
+        private final Queue<Runnable> mJobQueue;
         private Boolean mIsEnded;
 
         public DispatchThread() {
@@ -1096,7 +1100,7 @@
 
     private static class WaitDoneBundle {
         public Runnable mUnlockRunnable;
-        private Object mWaitLock;
+        private final Object mWaitLock;
 
         WaitDoneBundle() {
             mWaitLock = new Object();
@@ -1130,7 +1134,9 @@
          */
         public static AFCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraAFCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new AFCallbackForward(handler, camera, cb);
         }
 
@@ -1171,7 +1177,9 @@
          */
         public static ErrorCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraErrorCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new ErrorCallbackForward(handler, camera, cb);
         }
 
@@ -1211,7 +1219,9 @@
          */
         public static AFMoveCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraAFMoveCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new AFMoveCallbackForward(handler, camera, cb);
         }
 
@@ -1253,7 +1263,9 @@
          */
         public static ShutterCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraShutterCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new ShutterCallbackForward(handler, camera, cb);
         }
 
@@ -1294,7 +1306,9 @@
          */
         public static PictureCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraPictureCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new PictureCallbackForward(handler, camera, cb);
         }
 
@@ -1336,7 +1350,9 @@
          */
         public static PreviewCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraPreviewDataCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new PreviewCallbackForward(handler, camera, cb);
         }
 
@@ -1375,7 +1391,9 @@
          */
         public static FaceDetectionCallbackForward getNewInstance(
                 Handler handler, CameraProxy camera, CameraFaceDetectionCallback cb) {
-            if (handler == null || camera == null || cb == null) return null;
+            if (handler == null || camera == null || cb == null) {
+                return null;
+            }
             return new FaceDetectionCallbackForward(handler, camera, cb);
         }