summaryrefslogtreecommitdiff
path: root/src/library/scala/collection/Iterator.scala
diff options
context:
space:
mode:
authorMartijn Hoekstra <martijnhoekstra@gmail.com>2016-05-16 18:52:06 +0200
committerMartijn Hoekstra <martijnhoekstra@gmail.com>2016-05-21 09:48:24 +0200
commitc89c36597f922fe29cbb3cec8095611f86ba4976 (patch)
treeeeaef6bee4da5441da999727ff5ba97c4e2aa394 /src/library/scala/collection/Iterator.scala
parentb3f8332cf399cd15067c879c8297c25598045883 (diff)
downloadscala-c89c36597f922fe29cbb3cec8095611f86ba4976.tar.gz
scala-c89c36597f922fe29cbb3cec8095611f86ba4976.tar.bz2
scala-c89c36597f922fe29cbb3cec8095611f86ba4976.zip
SI-9766 - allow ++ on empty ConcatIterator
Diffstat (limited to 'src/library/scala/collection/Iterator.scala')
-rw-r--r--src/library/scala/collection/Iterator.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/library/scala/collection/Iterator.scala b/src/library/scala/collection/Iterator.scala
index 8d88b1c6b1..9ba16976bd 100644
--- a/src/library/scala/collection/Iterator.scala
+++ b/src/library/scala/collection/Iterator.scala
@@ -200,7 +200,8 @@ object Iterator {
} else Iterator.empty.next()
override def ++[B >: A](that: => GenTraversableOnce[B]): Iterator[B] =
- new ConcatIterator(current, queue :+ (() => that.toIterator))
+ if(current eq null) new JoinIterator(Iterator.empty, that)
+ else new ConcatIterator(current, queue :+ (() => that.toIterator))
}
private[scala] final class JoinIterator[+A](lhs: Iterator[A], that: => GenTraversableOnce[A]) extends Iterator[A] {