diff options
author | Rich Hickey <richhickey@gmail.com> | 2008-02-01 12:39:47 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2008-02-01 12:39:47 +0000 |
commit | 7a23f637db7aa64eb3df471d1f44fc53262264a8 (patch) | |
tree | ad94e365389e63f0519d960ea5a2eee1c880c552 /src | |
parent | 0ed5a73de68fb3d50d28825f0b0ab5a3ea91468d (diff) |
fixed subvec assoc at end
Diffstat (limited to 'src')
-rw-r--r-- | src/jvm/clojure/lang/APersistentVector.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/jvm/clojure/lang/APersistentVector.java b/src/jvm/clojure/lang/APersistentVector.java index ede92bc4..15ce1870 100644 --- a/src/jvm/clojure/lang/APersistentVector.java +++ b/src/jvm/clojure/lang/APersistentVector.java @@ -323,8 +323,10 @@ static class SubVector extends APersistentVector{ } public IPersistentVector assocN(int i, Object val){ - if(start + i >= end) + if(start + i > end) throw new IndexOutOfBoundsException(); + else if(start + i == end) + return cons(val); return new SubVector(_meta, v.assocN(start + i, val), start, end); } |