diff options
author | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-06-28 12:02:27 -0700 |
---|---|---|
committer | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-06-28 12:02:27 -0700 |
commit | 0c1acec0a02b9128f3d138ecef84d903296d6b2a (patch) | |
tree | 99ed202dc6694ab10822fdc0b6ae3823c1a60f3c | |
parent | 6f08c06a35a0b70c49e23a296b13ac391a460584 (diff) | |
parent | 6ccb607dd5c9481f859394f3c8c815b5ffa6ed73 (diff) | |
download | scala-0c1acec0a02b9128f3d138ecef84d903296d6b2a.tar.gz scala-0c1acec0a02b9128f3d138ecef84d903296d6b2a.tar.bz2 scala-0c1acec0a02b9128f3d138ecef84d903296d6b2a.zip |
Merge pull request #794 from odersky/pullreq/statistics
Fixed race condition that was caused by Statistics pushTimer.
-rw-r--r-- | src/reflect/scala/reflect/internal/util/Statistics.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/reflect/scala/reflect/internal/util/Statistics.scala b/src/reflect/scala/reflect/internal/util/Statistics.scala index f69530c40d..3a31c2858b 100644 --- a/src/reflect/scala/reflect/internal/util/Statistics.scala +++ b/src/reflect/scala/reflect/internal/util/Statistics.scala @@ -41,7 +41,7 @@ object Statistics { } /** If enabled, push and start a new timer in timer stack */ - @inline final def pushTimer(timers: TimerStack, timer: StackableTimer): TimerSnapshot = + @inline final def pushTimer(timers: TimerStack, timer: => StackableTimer): TimerSnapshot = if (_enabled && timers != null) timers.push(timer) else null /** If enabled, stop and pop timer from timer stack */ @@ -190,7 +190,7 @@ quant) * on access by executing `initValue`. */ class QuantMap[K, V <% Ordered[V]](val prefix: String, val phases: Seq[String], initValue: => V) - extends scala.collection.mutable.HashMap[K, V] with Quantity { + extends mutable.HashMap[K, V] with mutable.SynchronizedMap[K, V] with Quantity { override def default(key: K) = { val elem = initValue this(key) = elem |