summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorAngus Kong <shkong@google.com>2013-06-25 11:12:16 -0700
committerAngus Kong <shkong@google.com>2013-06-25 11:12:16 -0700
commit4f5dee37d71532693f756ebf724a7880b0a2ef78 (patch)
tree3c81302a1b74c3f68f534c5e9d0b638b02ba1b06 /src/com
parentb43c678f8b6c2d9e202cd1fc0c110d15b15be50f (diff)
downloadandroid_packages_apps_Snap-4f5dee37d71532693f756ebf724a7880b0a2ef78.tar.gz
android_packages_apps_Snap-4f5dee37d71532693f756ebf724a7880b0a2ef78.tar.bz2
android_packages_apps_Snap-4f5dee37d71532693f756ebf724a7880b0a2ef78.zip
Synchronize camera access in start preview thread.
Change-Id: Iba953fea3bd17ecb085d75fb3b2e350c0bf5d3b1
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/camera/VideoModule.java14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java
index 839037fc0..0daa67246 100644
--- a/src/com/android/camera/VideoModule.java
+++ b/src/com/android/camera/VideoModule.java
@@ -394,12 +394,6 @@ public class VideoModule implements CameraModule,
readVideoPreferences();
mUI.setPrefChangedListener(this);
- new Thread(new Runnable() {
- @Override
- public void run() {
- startPreview();
- }
- }).start();
mQuickCapture = mActivity.getIntent().getBooleanExtra(EXTRA_QUICK_CAPTURE, false);
mLocationManager = new LocationManager(mActivity, null);
@@ -761,7 +755,11 @@ public class VideoModule implements CameraModule,
new Thread(new Runnable() {
@Override
public void run() {
- startPreview();
+ synchronized (mCameraOpened) {
+ if (mCameraOpened) {
+ startPreview();
+ }
+ }
}
}).start();
} else {
@@ -931,8 +929,8 @@ public class VideoModule implements CameraModule,
CameraHolder.instance().release();
}
mCameraOpened = false;
+ mCameraDevice = null;
}
- mCameraDevice = null;
mPreviewing = false;
mSnapshotInProgress = false;
}