summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsrc/com/android/camera/PhotoModule.java12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index 372ae3aa1..206f05f18 100755
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -2784,9 +2784,13 @@ public class PhotoModule
mMirror = (info.facing == CameraInfo.CAMERA_FACING_FRONT);
String[] defaultFocusModes = mActivity.getResources().getStringArray(
R.array.pref_camera_focusmode_default_array);
- mFocusManager = new FocusOverlayManager(mPreferences, defaultFocusModes,
- mInitialParams, this, mMirror,
- mActivity.getMainLooper(), mUI);
+ synchronized (this) {
+ if (mFocusManager == null) {
+ mFocusManager = new FocusOverlayManager(mPreferences, defaultFocusModes,
+ mInitialParams, this, mMirror,
+ mActivity.getMainLooper(), mUI);
+ }
+ }
}
}
@@ -3057,6 +3061,8 @@ public class PhotoModule
setCameraState(IDLE);
}
+ if (mFocusManager == null) initializeFocusManager();
+
if (!mSnapshotOnIdle) {
mFocusManager.setAeAwbLock(false); // Unlock AE and AWB.
}