diff options
-rw-r--r-- | src/com/android/camera/AndroidCameraManagerImpl.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/PhotoModule.java | 9 | ||||
-rw-r--r-- | src/com/android/camera/VideoMenu.java | 9 |
3 files changed, 14 insertions, 6 deletions
diff --git a/src/com/android/camera/AndroidCameraManagerImpl.java b/src/com/android/camera/AndroidCameraManagerImpl.java index 637a5f5c5..408bf4f55 100644 --- a/src/com/android/camera/AndroidCameraManagerImpl.java +++ b/src/com/android/camera/AndroidCameraManagerImpl.java @@ -774,7 +774,7 @@ class AndroidCameraManagerImpl implements CameraManager { mHandler.post(new Runnable() { @Override public void run() { - if (currentCamera.equals(mCamera.getCamera())) { + if (currentCamera != null && currentCamera.equals(mCamera.getCamera())) { mCallback.onPictureTaken(data, mCamera); } } diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index 2f519935e..c71e8ef1d 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -1975,9 +1975,14 @@ public class PhotoModule @Override public void onShutterButtonFocus(boolean pressed) { - if (mPaused || mUI.collapseCameraControls() + if (mCameraDevice == null + || mPaused || mUI.collapseCameraControls() || (mCameraState == SNAPSHOT_IN_PROGRESS) - || (mCameraState == PREVIEW_STOPPED)) return; + || (mCameraState == PREVIEW_STOPPED)) { + Log.v(TAG, "onShutterButtonFocus error case mCameraState = " + mCameraState + + "mCameraDevice = " + mCameraDevice + "mPaused =" + mPaused); + return; + } synchronized(mCameraDevice) { if (mCameraState == LONGSHOT) { diff --git a/src/com/android/camera/VideoMenu.java b/src/com/android/camera/VideoMenu.java index b8cb5a1fe..3e6352397 100644 --- a/src/com/android/camera/VideoMenu.java +++ b/src/com/android/camera/VideoMenu.java @@ -460,9 +460,12 @@ public class VideoMenu extends MenuController @Override public void onClick(View v) { addFilterMode(); - View view = mUI.getPreviewMenuLayout().getChildAt(0); - mUI.adjustOrientation(); - animateSlideIn(view, previewMenuSize, false); + ViewGroup menuLayout = mUI.getPreviewMenuLayout(); + if (menuLayout != null) { + View view = menuLayout.getChildAt(0); + mUI.adjustOrientation(); + animateSlideIn(view, previewMenuSize, false); + } } }); } |