From da86a759b322d8032f434d60bb09e7accce2fd1e Mon Sep 17 00:00:00 2001 From: Brandon McAnsh Date: Wed, 14 Sep 2016 10:37:06 -0400 Subject: Snap: SettingsManager: Assert CameraCharacteristics before accessing them Change-Id: If3e3a9851490c929c39109d96781cd97dabbe597 Signed-off-by: Brandon McAnsh --- src/com/android/camera/SettingsManager.java | 30 +++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/src/com/android/camera/SettingsManager.java b/src/com/android/camera/SettingsManager.java index 971a22771..1380a5e08 100644 --- a/src/com/android/camera/SettingsManager.java +++ b/src/com/android/camera/SettingsManager.java @@ -136,21 +136,23 @@ public class SettingsManager implements ListMenu.SettingsListener { String cameraId = cameraIdList[i]; CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId); - Byte monoOnly = 0; - try { - monoOnly = characteristics.get(CaptureModule.MetaDataMonoOnlyKey); - }catch(Exception e) { - } - if (monoOnly == 1) { - CaptureModule.MONO_ID = i; - mIsMonoCameraPresent = true; - } - int facing = characteristics.get(CameraCharacteristics.LENS_FACING); - if (facing == CameraCharacteristics.LENS_FACING_FRONT) { - CaptureModule.FRONT_ID = i; - mIsFrontCameraPresent = true; + if (characteristics != null) { + Byte monoOnly = 0; + try { + monoOnly = characteristics.get(CaptureModule.MetaDataMonoOnlyKey); + }catch(Exception e) { + } + if (monoOnly == 1) { + CaptureModule.MONO_ID = i; + mIsMonoCameraPresent = true; + } + int facing = characteristics.get(CameraCharacteristics.LENS_FACING); + if (facing == CameraCharacteristics.LENS_FACING_FRONT) { + CaptureModule.FRONT_ID = i; + mIsFrontCameraPresent = true; + } + mCharacteristics.add(i, characteristics); } - mCharacteristics.add(i, characteristics); } } catch (CameraAccessException e) { e.printStackTrace(); -- cgit v1.2.3