From 672bd4095882539e7c3ba897fff62bb237e77570 Mon Sep 17 00:00:00 2001 From: Dan Lenski Date: Wed, 6 Sep 2023 18:58:06 -0700 Subject: [PATCH] Prevent --raw CLR option from failing if result.getRawBytes() is null (#1683) Fixes https://github.com/zxing/zxing/issues/1682 --- .../google/zxing/client/j2se/DecodeWorker.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/javase/src/main/java/com/google/zxing/client/j2se/DecodeWorker.java b/javase/src/main/java/com/google/zxing/client/j2se/DecodeWorker.java index 77a040122..4e1948a55 100644 --- a/javase/src/main/java/com/google/zxing/client/j2se/DecodeWorker.java +++ b/javase/src/main/java/com/google/zxing/client/j2se/DecodeWorker.java @@ -168,14 +168,17 @@ final class DecodeWorker implements Callable { if (config.outputRaw) { StringBuilder rawData = new StringBuilder(); + byte[] rawBytes = result.getRawBytes(); - for (byte b : result.getRawBytes()) { - rawData.append(String.format("%02X", b & 0xff)); - rawData.append(" "); + if (rawBytes != null) { + for (byte b : rawBytes) { + rawData.append(String.format("%02X", b & 0xff)); + rawData.append(" "); + } + rawData.setLength(rawData.length() - 1); // chop off final space + + output.write("Raw bits:\n" + rawData + "\n"); } - rawData.setLength(rawData.length() - 1); // chop off final space - - output.write("Raw bits:\n" + rawData + "\n"); } ResultPoint[] resultPoints = result.getResultPoints();