From 289bdf1e3b25af843a945de64548e19e9d759bcb Mon Sep 17 00:00:00 2001 From: codeworkx Date: Thu, 4 Jan 2018 23:13:53 +0100 Subject: Snap: check tags before using them MessageQueue-JNI: java.lang.IllegalArgumentException: Could not find tag for key 'org.codeaurora.qcamera3.saturation.use_saturation') Change-Id: Ia42c67552f9d4574e5f86af2ac5aea853198d0ed --- src/com/android/camera/CaptureModule.java | 6 ++++++ src/com/android/camera/util/VendorTagUtil.java | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java index 61aaf9d23..687d21905 100755 --- a/src/com/android/camera/CaptureModule.java +++ b/src/com/android/camera/CaptureModule.java @@ -4067,6 +4067,8 @@ public class CaptureModule implements CameraModule, PhotoController, } private void applyInstantAEC(CaptureRequest.Builder request) { + if (!VendorTagUtil.isSupported(request, CaptureModule.INSTANT_AEC_MODE)) + return; String value = mSettingsManager.getValue(SettingsManager.KEY_INSTANT_AEC); if (value == null || value.equals("0")) return; @@ -4075,6 +4077,8 @@ public class CaptureModule implements CameraModule, PhotoController, } private void applySaturationLevel(CaptureRequest.Builder request) { + if (!VendorTagUtil.isSupported(request, CaptureModule.SATURATION)) + return; String value = mSettingsManager.getValue(SettingsManager.KEY_SATURATION_LEVEL); if (value != null) { int intValue = Integer.parseInt(value); @@ -4091,6 +4095,8 @@ public class CaptureModule implements CameraModule, PhotoController, } private void applyHistogram(CaptureRequest.Builder request) { + if (!VendorTagUtil.isSupported(request, CaptureModule.histMode)) + return; String value = mSettingsManager.getValue(SettingsManager.KEY_HISTOGRAM); if (value != null ) { if (value.equals("enable")){ diff --git a/src/com/android/camera/util/VendorTagUtil.java b/src/com/android/camera/util/VendorTagUtil.java index 9c2f6cc1c..32fc7da7c 100644 --- a/src/com/android/camera/util/VendorTagUtil.java +++ b/src/com/android/camera/util/VendorTagUtil.java @@ -54,7 +54,7 @@ public class VendorTagUtil { Long.class); - private static boolean isSupported(CaptureRequest.Builder builder, + public static boolean isSupported(CaptureRequest.Builder builder, CaptureRequest.Key key) { boolean supported = true; try { -- cgit v1.2.3