[automerger] Merge changes from topic "am-7424efa6-0590-42df-bf56-90682a2c4f31" into klp-ub-dev am: 15f75d0422 am: ce9a76f40c am: 0640937bdb am: 480084e6af am: 34b2a8b522 am: d98bd836b8 am: 69e7eac88d am: 4ee00072f6 am: e8dd7338f0 am: a59539409f am: 886a1 am: 3ca83cf1b3 am: 6a53272e6f am: 7709475e7a
am: 65b9b41e57

Change-Id: I601ff1e03e9ab887a8c4d238111e76eff03add36
diff --git a/services/camera/libcameraservice/api1/client2/Parameters.cpp b/services/camera/libcameraservice/api1/client2/Parameters.cpp
index a305bc7..1addcdd 100644
--- a/services/camera/libcameraservice/api1/client2/Parameters.cpp
+++ b/services/camera/libcameraservice/api1/client2/Parameters.cpp
@@ -2200,6 +2200,14 @@
                 normalizedXToArray(meteringAreas[j].right);
             reqMeteringAreas[i + 3] =
                 normalizedYToArray(meteringAreas[j].bottom);
+            // Requested size may be zero by rounding error with/without zooming.
+            // The ae regions should be at least 1 if metering width/height is not zero.
+            if (reqMeteringAreas[i + 0] == reqMeteringAreas[i + 2]) {
+                reqMeteringAreas[i + 2]++;
+            }
+            if (reqMeteringAreas[i + 1] == reqMeteringAreas[i + 3]) {
+                reqMeteringAreas[i + 3]++;
+            }
         } else {
             reqMeteringAreas[i + 0] = 0;
             reqMeteringAreas[i + 1] = 0;