diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/jvm/clojure/lang/LazySeq.java | 2 | ||||
-rw-r--r-- | src/jvm/clojure/lang/RT.java | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/jvm/clojure/lang/LazySeq.java b/src/jvm/clojure/lang/LazySeq.java index 8ebcaf68..7fad8017 100644 --- a/src/jvm/clojure/lang/LazySeq.java +++ b/src/jvm/clojure/lang/LazySeq.java @@ -55,7 +55,7 @@ synchronized public ISeq rest(){ { try { - _rest = (ISeq) _restFn.invoke(); + _rest = RT.seq(_restFn.invoke()); } catch(Exception ex) { diff --git a/src/jvm/clojure/lang/RT.java b/src/jvm/clojure/lang/RT.java index 65fdd039..c159f629 100644 --- a/src/jvm/clojure/lang/RT.java +++ b/src/jvm/clojure/lang/RT.java @@ -407,7 +407,8 @@ static public IPersistentCollection conj(IPersistentCollection coll, Object x){ return coll.cons(x); } -static public ISeq cons(Object x, ISeq y){ +static public ISeq cons(Object x, Object coll){ + ISeq y = seq(coll); if(y == null) return new PersistentList(x); return y.cons(x); |