diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/library/scala/collection/generic/LinearSequenceTemplate.scala | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/library/scala/collection/generic/LinearSequenceTemplate.scala b/src/library/scala/collection/generic/LinearSequenceTemplate.scala index 6dcf96fce4..2e1f61a36f 100644 --- a/src/library/scala/collection/generic/LinearSequenceTemplate.scala +++ b/src/library/scala/collection/generic/LinearSequenceTemplate.scala @@ -280,11 +280,16 @@ trait LinearSequenceTemplate[+A, +This <: LinearSequenceTemplate[A, This] with L case that1: LinearSequence[_] => var these = this var those = that1 - while (!these.isEmpty && !those.isEmpty && these.head == those.head) { + while (these != null && those != null && !these.isEmpty && !those.isEmpty && these.head == those.head) { these = these.tail those = those.tail } - these.isEmpty && those.isEmpty + if (these == null) + those == null + else if (those == null) + false + else + these.isEmpty && those.isEmpty case _ => super.sameElements(that) } |