diff options
-rw-r--r-- | src/jvm/clojure/lang/PersistentArrayMap.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/jvm/clojure/lang/PersistentArrayMap.java b/src/jvm/clojure/lang/PersistentArrayMap.java index 9f598d9d..7b7eda58 100644 --- a/src/jvm/clojure/lang/PersistentArrayMap.java +++ b/src/jvm/clojure/lang/PersistentArrayMap.java @@ -329,8 +329,10 @@ static final class TransientArrayMap extends ATransientMap { return len / 2; } - IPersistentMap doPersistent() { - return new PersistentArrayMap(Arrays.copyOf(array, len)); + IPersistentMap doPersistent(){ + Object[] a = new Object[len]; + System.arraycopy(array,0,a,0,len); + return new PersistentArrayMap(a); } void ensureEditable(){ |