summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorYin-Chia Yeh <yinchiayeh@google.com>2015-04-15 12:16:02 -0700
committerYin-Chia Yeh <yinchiayeh@google.com>2015-04-15 13:03:02 -0700
commit7768dedbce78e0bdbed014debd90faef88e9dacb (patch)
treeb30d60ae6c030dffcc11a75f7bbc26bb722c1674 /services
parentcc0cb8a14acc8ed1760b929fd7f706d800a6ff99 (diff)
downloadframeworks_av-7768dedbce78e0bdbed014debd90faef88e9dacb.zip
frameworks_av-7768dedbce78e0bdbed014debd90faef88e9dacb.tar.gz
frameworks_av-7768dedbce78e0bdbed014debd90faef88e9dacb.tar.bz2
Camera: fix invalid access of static_camera_characteristics
Bug: 20260866 Change-Id: Ib2b9ef807d66989515ac1a2e9f623fdd226a665a
Diffstat (limited to 'services')
-rw-r--r--services/camera/libcameraservice/common/CameraModule.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/services/camera/libcameraservice/common/CameraModule.cpp b/services/camera/libcameraservice/common/CameraModule.cpp
index e5b12ae..b861d71 100644
--- a/services/camera/libcameraservice/common/CameraModule.cpp
+++ b/services/camera/libcameraservice/common/CameraModule.cpp
@@ -78,6 +78,12 @@ int CameraModule::getCameraInfo(int cameraId, struct camera_info *info) {
if (ret != 0) {
return ret;
}
+ int deviceVersion = cameraInfo.device_version;
+ if (deviceVersion < CAMERA_DEVICE_API_VERSION_2_0) {
+ // static_camera_characteristics is invalid
+ *info = rawInfo;
+ return ret;
+ }
CameraMetadata m;
m = rawInfo.static_camera_characteristics;
deriveCameraCharacteristicsKeys(rawInfo.device_version, m);