Merge "Make Camera support unknown higher hardware support levels." into nyc-dev
am: 3041a64ba7
* commit '3041a64ba76e7dc792b8939363185421ee2962bd':
Make Camera support unknown higher hardware support levels.
Change-Id: Ie387370b76a181380c965a8ceca63bfae15b3036
diff --git a/src/com/android/camera/one/v2/OneCameraCharacteristicsImpl.java b/src/com/android/camera/one/v2/OneCameraCharacteristicsImpl.java
index 279ede3..f7a2b7e 100644
--- a/src/com/android/camera/one/v2/OneCameraCharacteristicsImpl.java
+++ b/src/com/android/camera/one/v2/OneCameraCharacteristicsImpl.java
@@ -139,11 +139,11 @@
@Override
public SupportedHardwareLevel getSupportedHardwareLevel() {
- Integer supportedHardwareLevel = mCameraCharacteristics.get(CameraCharacteristics
- .INFO_SUPPORTED_HARDWARE_LEVEL);
+ Integer supportedHardwareLevel = mCameraCharacteristics
+ .get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL);
// If this fails, it is a framework bug, per API documentation.
checkNotNull(supportedHardwareLevel, "INFO_SUPPORTED_HARDWARE_LEVEL not found");
- switch ((int) supportedHardwareLevel) {
+ switch (supportedHardwareLevel) {
case CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_FULL:
return SupportedHardwareLevel.FULL;
case CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED:
@@ -151,6 +151,12 @@
case CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY:
return SupportedHardwareLevel.LEGACY;
default:
+ if (supportedHardwareLevel >
+ CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_FULL) {
+ Log.i(TAG, "Unknown higher hardware level mapped to FULL: "
+ + supportedHardwareLevel);
+ return SupportedHardwareLevel.FULL;
+ }
throw new IllegalStateException("Invalid value for INFO_SUPPORTED_HARDWARE_LEVEL");
}
}