summaryrefslogtreecommitdiff
path: root/src/reflect/scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2013-05-03 17:39:51 -0700
committerPaul Phillips <paulp@improving.org>2013-05-03 17:40:10 -0700
commita86c7a15d1a58e828b61fc12a8b3d0ef0b2f8061 (patch)
tree490f0dbf6c7e64883b2ce4f59aa556a70b835051 /src/reflect/scala
parent6eb33d4ad15ae3548c21535de652ea246582a44f (diff)
downloadscala-a86c7a15d1a58e828b61fc12a8b3d0ef0b2f8061.tar.gz
scala-a86c7a15d1a58e828b61fc12a8b3d0ef0b2f8061.tar.bz2
scala-a86c7a15d1a58e828b61fc12a8b3d0ef0b2f8061.zip
Hardening against nulls for deserialization.
When one attempts to populate data structures via deserialization, nulls tend to show up in unlikely or "impossible" places. Now there are a few fewer.
Diffstat (limited to 'src/reflect/scala')
-rw-r--r--src/reflect/scala/reflect/internal/pickling/UnPickler.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/pickling/UnPickler.scala b/src/reflect/scala/reflect/internal/pickling/UnPickler.scala
index c940d863f7..021c97793f 100644
--- a/src/reflect/scala/reflect/internal/pickling/UnPickler.scala
+++ b/src/reflect/scala/reflect/internal/pickling/UnPickler.scala
@@ -851,7 +851,8 @@ abstract class UnPickler {
private val p = phase
override def complete(sym: Symbol) : Unit = try {
val tp = at(i, () => readType(sym.isTerm)) // after NMT_TRANSITION, revert `() => readType(sym.isTerm)` to `readType`
- enteringPhase(p) (sym setInfo tp)
+ if (p ne null)
+ enteringPhase(p) (sym setInfo tp)
if (currentRunId != definedAtRunId)
sym.setInfo(adaptToNewRunMap(tp))
}