summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/android/camera/AndroidCameraManagerImpl.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/camera/AndroidCameraManagerImpl.java b/src/com/android/camera/AndroidCameraManagerImpl.java
index 637a5f5c5..42ae20f02 100644
--- a/src/com/android/camera/AndroidCameraManagerImpl.java
+++ b/src/com/android/camera/AndroidCameraManagerImpl.java
@@ -201,7 +201,14 @@ class AndroidCameraManagerImpl implements CameraManager {
try {
switch (msg.what) {
case OPEN_CAMERA:
- mCamera = android.hardware.Camera.open(msg.arg1);
+ try {
+ mCamera = android.hardware.Camera.openLegacy(msg.arg1,
+ android.hardware.Camera.CAMERA_HAL_API_VERSION_1_0);
+ } catch (RuntimeException e) {
+ /* Retry with open if openLegacy fails */
+ Log.v(TAG, "openLegacy failed. Using open instead");
+ mCamera = android.hardware.Camera.open(msg.arg1);
+ }
if (mCamera != null) {
mParametersIsDirty = true;