From e715fec42a2f8643c8f53c331f7218a1e62b0dc2 Mon Sep 17 00:00:00 2001 From: Sean Owen Date: Thu, 24 Jul 2014 12:05:50 +0100 Subject: [PATCH] Avoid NPE when underlying result point is null, for some reason --- .../com/google/zxing/multi/GenericMultipleBarcodeReader.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/google/zxing/multi/GenericMultipleBarcodeReader.java b/core/src/main/java/com/google/zxing/multi/GenericMultipleBarcodeReader.java index 276279bb7..cc8725d43 100644 --- a/core/src/main/java/com/google/zxing/multi/GenericMultipleBarcodeReader.java +++ b/core/src/main/java/com/google/zxing/multi/GenericMultipleBarcodeReader.java @@ -160,7 +160,9 @@ public final class GenericMultipleBarcodeReader implements MultipleBarcodeReader ResultPoint[] newResultPoints = new ResultPoint[oldResultPoints.length]; for (int i = 0; i < oldResultPoints.length; i++) { ResultPoint oldPoint = oldResultPoints[i]; - newResultPoints[i] = new ResultPoint(oldPoint.getX() + xOffset, oldPoint.getY() + yOffset); + if (oldPoint != null) { + newResultPoints[i] = new ResultPoint(oldPoint.getX() + xOffset, oldPoint.getY() + yOffset); + } } Result newResult = new Result(result.getText(), result.getRawBytes(), newResultPoints, result.getBarcodeFormat()); newResult.putAllMetadata(result.getResultMetadata());