diff options
author | Lukas Rytz <lukas.rytz@typesafe.com> | 2014-12-11 09:07:46 +0100 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@typesafe.com> | 2014-12-11 09:07:46 +0100 |
commit | 53eab9a1911d8549121d7fd3c6c68872a8655cf4 (patch) | |
tree | ff672f58fff4858e7d11b451b84c83846365f25a /src | |
parent | 36b1014ac63205a38e73ae18a05ac6f956c3410f (diff) | |
parent | 9f2083b88e003a3f2a641460244c44b0f1f06821 (diff) | |
download | scala-53eab9a1911d8549121d7fd3c6c68872a8655cf4.tar.gz scala-53eab9a1911d8549121d7fd3c6c68872a8655cf4.tar.bz2 scala-53eab9a1911d8549121d7fd3c6c68872a8655cf4.zip |
Merge pull request #4192 from Ichoran/issue/8950
SI-8950 SeqView and StreamView allow indexing out of a slice
Diffstat (limited to 'src')
-rw-r--r-- | src/library/scala/collection/SeqViewLike.scala | 2 | ||||
-rw-r--r-- | src/library/scala/collection/mutable/IndexedSeqView.scala | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/library/scala/collection/SeqViewLike.scala b/src/library/scala/collection/SeqViewLike.scala index ef6d2272cb..59e0e73e89 100644 --- a/src/library/scala/collection/SeqViewLike.scala +++ b/src/library/scala/collection/SeqViewLike.scala @@ -55,7 +55,7 @@ trait SeqViewLike[+A, trait Sliced extends super.Sliced with Transformed[A] { def length = iterator.size def apply(idx: Int): A = - if (idx + from < until) self.apply(idx + from) + if (idx >= 0 && idx + from < until) self.apply(idx + from) else throw new IndexOutOfBoundsException(idx.toString) override def foreach[U](f: A => U) = iterator foreach f diff --git a/src/library/scala/collection/mutable/IndexedSeqView.scala b/src/library/scala/collection/mutable/IndexedSeqView.scala index 31a4749960..7acdeeff18 100644 --- a/src/library/scala/collection/mutable/IndexedSeqView.scala +++ b/src/library/scala/collection/mutable/IndexedSeqView.scala @@ -50,7 +50,7 @@ self => trait Sliced extends super.Sliced with Transformed[A] { override def length = endpoints.width def update(idx: Int, elem: A) = - if (idx + from < until) self.update(idx + from, elem) + if (idx >= 0 && idx + from < until) self.update(idx + from, elem) else throw new IndexOutOfBoundsException(idx.toString) } |