diff options
author | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-06-25 17:19:58 +0200 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-06-26 20:17:57 +0200 |
commit | 4da95609a92f0c685bb7a48688fe9c485f2bc328 (patch) | |
tree | 90cff36c5831a3a377e49112e3b24ca7cd52fb53 /src | |
parent | fc0b8644beb564d10ee7f4ea28209aa2053fa1cb (diff) | |
download | scala-4da95609a92f0c685bb7a48688fe9c485f2bc328.tar.gz scala-4da95609a92f0c685bb7a48688fe9c485f2bc328.tar.bz2 scala-4da95609a92f0c685bb7a48688fe9c485f2bc328.zip |
SI-5914 handle null in classtag extractor
Diffstat (limited to 'src')
-rw-r--r-- | src/library/scala/reflect/ClassTag.scala | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/library/scala/reflect/ClassTag.scala b/src/library/scala/reflect/ClassTag.scala index f753dfbcbb..860e7bac28 100644 --- a/src/library/scala/reflect/ClassTag.scala +++ b/src/library/scala/reflect/ClassTag.scala @@ -52,7 +52,7 @@ trait ClassTag[T] extends Equals with Serializable { * `SomeExtractor(...)` is turned into `ct(SomeExtractor(...))` if `T` in `SomeExtractor.unapply(x: T)` * is uncheckable, but we have an instance of `ClassTag[T]`. */ - def unapply(x: Any): Option[T] = if (runtimeClass.isAssignableFrom(x.getClass)) Some(x.asInstanceOf[T]) else None + def unapply(x: Any): Option[T] = if (x != null && runtimeClass.isAssignableFrom(x.getClass)) Some(x.asInstanceOf[T]) else None /** case class accessories */ override def canEqual(x: Any) = x.isInstanceOf[ClassTag[_]] |