diff options
Diffstat (limited to 'src/com/android/camera/CameraActivity.java')
-rw-r--r-- | src/com/android/camera/CameraActivity.java | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java index 3997705b3..bf4889873 100644 --- a/src/com/android/camera/CameraActivity.java +++ b/src/com/android/camera/CameraActivity.java @@ -2169,16 +2169,26 @@ public class CameraActivity extends QuickActivity mCameraController.removeCallbackReceiver(); mCameraController.setCameraExceptionHandler(null); } - getContentResolver().unregisterContentObserver(mLocalImagesObserver); - getContentResolver().unregisterContentObserver(mLocalVideosObserver); + if (mLocalImagesObserver != null) { + getContentResolver().unregisterContentObserver(mLocalImagesObserver); + } + if (mLocalVideosObserver != null) { + getContentResolver().unregisterContentObserver(mLocalVideosObserver); + } getServices().getCaptureSessionManager().removeSessionListener(mSessionListener); - mCameraAppUI.onDestroy(); - mModeListView.setVisibilityChangedListener(null); + if (mCameraAppUI != null) { + mCameraAppUI.onDestroy(); + } + if (mModeListView != null) { + mModeListView.setVisibilityChangedListener(null); + } mCameraController = null; mSettingsManager = null; mOrientationManager = null; mButtonManager = null; - mSoundPlayer.release(); + if (mSoundPlayer != null) { + mSoundPlayer.release(); + } CameraAgentFactory.recycle(CameraAgentFactory.CameraApi.API_1); CameraAgentFactory.recycle(CameraAgentFactory.CameraApi.AUTO); } |