summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/WideAnglePanoramaModule.java
diff options
context:
space:
mode:
authorSanthosh Kumar Thimmanna Bhattar <sthim@codeaurora.org>2014-10-10 15:49:31 +0530
committerSanthosh Kumar Thimmanna Bhattar <sthim@codeaurora.org>2014-10-10 15:49:31 +0530
commit612ebddbc642338fce76919767a691875ba3c5f8 (patch)
tree8c9d6e7ea4de52a4113818cc363a1eba4e06460e /src/com/android/camera/WideAnglePanoramaModule.java
parentaa00842f5d4147f4322e390b78a1bc30e244eb56 (diff)
downloadandroid_packages_apps_Snap-612ebddbc642338fce76919767a691875ba3c5f8.tar.gz
android_packages_apps_Snap-612ebddbc642338fce76919767a691875ba3c5f8.tar.bz2
android_packages_apps_Snap-612ebddbc642338fce76919767a691875ba3c5f8.zip
SnapdragonCamera: Add camera error callback to WideAngle Panorama
- Panorama preview is getting stuck when media server or camera daemon crashed as these error callbacks are not handled in Panorama - Fix is to add camera error callback to camera WideAngle Panorama to handle errors like media server or camera daemon crash. CRs-Fixed: 736404 Change-Id: I4b0f9883ca57b7a2fc93e0b31fee7b908bb18242
Diffstat (limited to 'src/com/android/camera/WideAnglePanoramaModule.java')
-rw-r--r--src/com/android/camera/WideAnglePanoramaModule.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/com/android/camera/WideAnglePanoramaModule.java b/src/com/android/camera/WideAnglePanoramaModule.java
index 61a416f37..5c45cae35 100644
--- a/src/com/android/camera/WideAnglePanoramaModule.java
+++ b/src/com/android/camera/WideAnglePanoramaModule.java
@@ -96,6 +96,7 @@ public class WideAnglePanoramaModule
private MosaicPreviewRenderer mMosaicPreviewRenderer;
private Object mRendererLock = new Object();
private Object mWaitObject = new Object();
+ private final CameraErrorCallback mErrorCallback = new CameraErrorCallback();
private String mPreparePreviewString;
private String mDialogTitle;
@@ -339,6 +340,7 @@ public class WideAnglePanoramaModule
private void releaseCamera() {
if (mCameraDevice != null) {
CameraHolder.instance().release();
+ mCameraDevice.setErrorCallback(null);
mCameraDevice = null;
mCameraState = PREVIEW_STOPPED;
}
@@ -1004,6 +1006,8 @@ public class WideAnglePanoramaModule
return;
}
+ mCameraDevice.setErrorCallback(mErrorCallback);
+
// This works around a driver issue. startPreview may fail if
// stopPreview/setPreviewTexture/startPreview are called several times
// in a row. mCameraTexture can be null after pressing home during