diff options
author | Martin Odersky <odersky@gmail.com> | 2010-09-07 15:33:16 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2010-09-07 15:33:16 +0000 |
commit | ee5a5d62943e4ba757032e8a4a0776c02e91f36b (patch) | |
tree | 1b1bfdfe74ecc4efcb2b9efcd7d2c03f0be27082 /src/library | |
parent | ea710916c35fff3254034fe491c68d2c54afdc08 (diff) | |
download | scala-ee5a5d62943e4ba757032e8a4a0776c02e91f36b.tar.gz scala-ee5a5d62943e4ba757032e8a4a0776c02e91f36b.tar.bz2 scala-ee5a5d62943e4ba757032e8a4a0776c02e91f36b.zip |
Fixes infinite loop when appending a ListBuffer...
Fixes infinite loop when appending a ListBuffer to itself. Review by
extempore.
Diffstat (limited to 'src/library')
-rw-r--r-- | src/library/scala/collection/mutable/ListBuffer.scala | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/library/scala/collection/mutable/ListBuffer.scala b/src/library/scala/collection/mutable/ListBuffer.scala index 415096ed89..55629fe523 100644 --- a/src/library/scala/collection/mutable/ListBuffer.scala +++ b/src/library/scala/collection/mutable/ListBuffer.scala @@ -123,6 +123,12 @@ final class ListBuffer[A] this } + override def ++=(xs: TraversableOnce[A]): this.type = + if (xs eq this) ++= (this take size) else super.++=(xs) + + override def ++=:(xs: TraversableOnce[A]): this.type = + if (xs eq this) ++=: (this take size) else super.++=(xs) + /** Clears the buffer contents. */ def clear() { |