From b9d997e1d94a9c0c6673cd21e708d7ed970747cf Mon Sep 17 00:00:00 2001 From: Paul Phillips Date: Thu, 10 Dec 2009 17:45:17 +0000 Subject: Don't NPE on null hashtable entries. --- src/library/scala/collection/mutable/FlatHashTable.scala | 2 +- src/library/scala/collection/mutable/HashTable.scala | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/library/scala/collection/mutable/FlatHashTable.scala b/src/library/scala/collection/mutable/FlatHashTable.scala index ab7d8ae51c..422559f089 100644 --- a/src/library/scala/collection/mutable/FlatHashTable.scala +++ b/src/library/scala/collection/mutable/FlatHashTable.scala @@ -187,7 +187,7 @@ trait FlatHashTable[A] { assert(false, i+" "+table(i)+" "+table.toString) } - protected def elemHashCode(elem: A) = elem.hashCode() + protected def elemHashCode(elem: A) = if (elem == null) 0 else elem.hashCode() protected final def improve(hcode: Int) = { var h: Int = hcode + ~(hcode << 9) diff --git a/src/library/scala/collection/mutable/HashTable.scala b/src/library/scala/collection/mutable/HashTable.scala index 5e68e6c656..aa7993ed14 100644 --- a/src/library/scala/collection/mutable/HashTable.scala +++ b/src/library/scala/collection/mutable/HashTable.scala @@ -227,7 +227,7 @@ trait HashTable[A] { protected def elemEquals(key1: A, key2: A): Boolean = (key1 == key2) - protected def elemHashCode(key: A) = key.hashCode() + protected def elemHashCode(key: A) = if (key == null) 0 else key.hashCode() protected final def improve(hcode: Int) = { var h: Int = hcode + ~(hcode << 9) -- cgit v1.2.3