From 51e4bebc383fd2cd385bddbb52ca1a9b293343bf Mon Sep 17 00:00:00 2001 From: junjiez Date: Wed, 4 Jan 2017 14:06:52 +0800 Subject: SnapdragonCamera: Fix IOE when setPreviewDisplay when setPreviewDisplay is called, maybe the surface is destoried and this will cause IOException and app crash, catch this exception and notify the callback to avoid this. Change-Id: I964d3f8921c83444362d6835d553273fa97284e6 CRs-Fixed: 1105734 --- src/com/android/camera/AndroidCameraManagerImpl.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) mode change 100644 => 100755 src/com/android/camera/AndroidCameraManagerImpl.java (limited to 'src') diff --git a/src/com/android/camera/AndroidCameraManagerImpl.java b/src/com/android/camera/AndroidCameraManagerImpl.java old mode 100644 new mode 100755 index 438be2e90..4decaec6c --- a/src/com/android/camera/AndroidCameraManagerImpl.java +++ b/src/com/android/camera/AndroidCameraManagerImpl.java @@ -293,7 +293,9 @@ class AndroidCameraManagerImpl implements CameraManager { try { mCamera.setPreviewDisplay((SurfaceHolder) msg.obj); } catch (IOException e) { - throw new RuntimeException(e); + Log.d(TAG,"setPreviewDisplay failed, surface is destoried"); + if (errorCbInstance != null) + errorCbInstance.onStartPreviewFailure(msg.arg1); } return; -- cgit v1.2.3