summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Lajos Molnar <lajos@google.com> 2015-02-03 14:55:21 -0800
committer Lajos Molnar <lajos@google.com> 2015-02-03 14:57:09 -0800
commitfdb2112bbc140aab869aac047454cd2f67809df1 (patch)
treece84f14688d03db00eeffbcbc3b90a64c6275856
parent39ae0547ca5a1e7cfe24a945b2f8a910e09b7f3c (diff)
camera2: limit flexYUV array size in DngCreator
corrected overread Bug: 19211135 Change-Id: I373b84dd9e2dc6219a305bf2d0308119668fab2a
-rw-r--r--core/java/android/hardware/camera2/DngCreator.java6
1 files changed, 3 insertions, 3 deletions
diff --git a/core/java/android/hardware/camera2/DngCreator.java b/core/java/android/hardware/camera2/DngCreator.java
index 6fc99ac1b9f6..33d539c25e73 100644
--- a/core/java/android/hardware/camera2/DngCreator.java
+++ b/core/java/android/hardware/camera2/DngCreator.java
@@ -530,9 +530,9 @@ public final class DngCreator implements AutoCloseable {
int uPixStride = uPlane.getPixelStride();
byte[] yuvPixel = { 0, 0, 0 };
- byte[] yFullRow = new byte[yPixStride * width];
- byte[] uFullRow = new byte[uPixStride * width / 2];
- byte[] vFullRow = new byte[vPixStride * width / 2];
+ byte[] yFullRow = new byte[yPixStride * (width - 1) + 1];
+ byte[] uFullRow = new byte[uPixStride * (width / 2 - 1) + 1];
+ byte[] vFullRow = new byte[vPixStride * (width / 2 - 1) + 1];
byte[] finalRow = new byte[BYTES_PER_RGB_PIX * width];
for (int i = 0; i < height; i++) {
int halfH = i / 2;