diff --git a/src/main/java/ch/spacebase/opennbt/stream/NBTInputStream.java b/src/main/java/ch/spacebase/opennbt/stream/NBTInputStream.java index 90f4265..c30ff09 100644 --- a/src/main/java/ch/spacebase/opennbt/stream/NBTInputStream.java +++ b/src/main/java/ch/spacebase/opennbt/stream/NBTInputStream.java @@ -267,6 +267,7 @@ public final class NBTInputStream implements Closeable { return new ObjectTag(name, o); case NBTConstants.TYPE_SHORT_ARRAY: + long time = System.currentTimeMillis(); length = is.readInt(); short[] shorts = new short[length]; @@ -274,6 +275,7 @@ public final class NBTInputStream implements Closeable { shorts[i] = is.readShort(); } + System.out.println("Took " + (System.currentTimeMillis() - time) + "ms to read a short array."); return new ShortArrayTag(name, shorts); case NBTConstants.TYPE_STRING_ARRAY: length = is.readInt(); diff --git a/src/main/java/ch/spacebase/opennbt/tag/ListTag.java b/src/main/java/ch/spacebase/opennbt/tag/ListTag.java index 6811b51..50d13dc 100644 --- a/src/main/java/ch/spacebase/opennbt/tag/ListTag.java +++ b/src/main/java/ch/spacebase/opennbt/tag/ListTag.java @@ -35,15 +35,11 @@ package ch.spacebase.opennbt.tag; */ import java.util.ArrayList; -import java.util.Collections; import java.util.Iterator; import java.util.List; import ch.spacebase.opennbt.NBTUtils; - - - /** * The TAG_List tag. */ @@ -77,7 +73,7 @@ public final class ListTag extends Tag implements Iterable { public ListTag(String name, Class type, List value) { super(name); this.type = type; - this.value = Collections.unmodifiableList(value); + this.value = value; } /** @@ -90,7 +86,7 @@ public final class ListTag extends Tag implements Iterable { @Override public List getValue() { - return value; + return new ArrayList(value); } public boolean add(T value) {