From fb97744dfd3d6b3dcd870554c0c494bbac6a854b Mon Sep 17 00:00:00 2001 From: gojomo Date: Tue, 12 May 2009 19:43:20 +0000 Subject: [PATCH] Fix for [HER-1495] ARCRecord throws null pointer when trying to generate a RecoverableIOException * ARCRecord.java guard against bull statusBytes in exception message --- commons/src/main/java/org/archive/io/arc/ARCRecord.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/commons/src/main/java/org/archive/io/arc/ARCRecord.java b/commons/src/main/java/org/archive/io/arc/ARCRecord.java index 3e5b73ea..b0006081 100644 --- a/commons/src/main/java/org/archive/io/arc/ARCRecord.java +++ b/commons/src/main/java/org/archive/io/arc/ARCRecord.java @@ -517,8 +517,9 @@ public class ARCRecord extends ArchiveRecord implements ARCConstants { byte [] statusBytes = HttpParser.readRawLine(getIn()); int eolCharCount = getEolCharsCount(statusBytes); if (eolCharCount <= 0) { - throw new RecoverableIOException("Failed to read http status where one " + - " was expected: " + new String(statusBytes)); + throw new RecoverableIOException( + "Failed to read http status where one was expected: " + + ((statusBytes == null) ? "" : new String(statusBytes))); } String statusLine = EncodingUtil.getString(statusBytes, 0, statusBytes.length - eolCharCount, ARCConstants.DEFAULT_ENCODING);