From 19f4d74d3e976bb905c88f27ba563a3af288930a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=CC=88rg=20Prante?= Date: Tue, 20 Sep 2016 17:10:50 +0200 Subject: [PATCH] add null checks --- src/main/java/org/xbib/marc/MarcField.java | 9 +++++++++ src/test/java/org/xbib/marc/ConcurrencyTest.java | 2 -- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/xbib/marc/MarcField.java b/src/main/java/org/xbib/marc/MarcField.java index e8f4430..4463851 100644 --- a/src/main/java/org/xbib/marc/MarcField.java +++ b/src/main/java/org/xbib/marc/MarcField.java @@ -136,6 +136,9 @@ public class MarcField implements Comparable { } public boolean isTagValid() { + if (tag == null) { + return true; + } return tag.length() == 3 && ((tag.charAt(0) >= '0' && tag.charAt(0) <= '9') || (tag.charAt(0) >= 'A' && tag.charAt(0) <= 'Z')) @@ -149,6 +152,9 @@ public class MarcField implements Comparable { if (isControl()) { return true; } + if (indicator == null) { + return true; + } boolean b = indicator.length() <= 9; for (int i = 0; i < indicator.length(); i++) { b = indicator.charAt(i) == ' ' @@ -167,6 +173,9 @@ public class MarcField implements Comparable { if (isControl()) { return true; } + if (subfieldIds == null) { + return true; + } boolean b = true; for (int i = 0; i < subfieldIds.length(); i++) { b = subfieldIds.charAt(i) == ' ' diff --git a/src/test/java/org/xbib/marc/ConcurrencyTest.java b/src/test/java/org/xbib/marc/ConcurrencyTest.java index 8ef7ef3..446e7ff 100644 --- a/src/test/java/org/xbib/marc/ConcurrencyTest.java +++ b/src/test/java/org/xbib/marc/ConcurrencyTest.java @@ -20,8 +20,6 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; import org.junit.Test; -import org.xbib.marc.Marc; -import org.xbib.marc.MarcXchangeConstants; import org.xbib.marc.json.MarcJsonWriter; import org.xbib.marc.xml.MarcXchangeWriter;