From bb36faf6c7a69096f35bd59e2b6827dcd99b32f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Bon=C3=A9r?= Date: Thu, 1 Jul 2010 23:56:08 +0200 Subject: [PATCH] fixed bug in timeout handling that caused tests to fail --- akka-core/src/main/scala/actor/Actor.scala | 3 ++- akka-core/src/test/scala/ReceiveTimeoutSpec.scala | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/akka-core/src/main/scala/actor/Actor.scala b/akka-core/src/main/scala/actor/Actor.scala index 7b60609f51..bbffc93320 100644 --- a/akka-core/src/main/scala/actor/Actor.scala +++ b/akka-core/src/main/scala/actor/Actor.scala @@ -464,7 +464,8 @@ trait Actor extends Logging { } private[akka] def checkReceiveTimeout = { - if (self.isDefinedAt(ReceiveTimeout)) { + //if ((self.hotswap getOrElse receive).isDefinedAt(ReceiveTimeout)) { // FIXME use when 'self' is safe to use, throws NPE sometimes + if ((receive ne null) && receive.isDefinedAt(ReceiveTimeout)) { log.debug("Scheduling timeout for Actor [" + toString + "]") timeoutActor = Some(Scheduler.scheduleOnce(self, ReceiveTimeout, self.receiveTimeout, TimeUnit.MILLISECONDS)) } diff --git a/akka-core/src/test/scala/ReceiveTimeoutSpec.scala b/akka-core/src/test/scala/ReceiveTimeoutSpec.scala index 60c5df934f..6aeb8e09de 100644 --- a/akka-core/src/test/scala/ReceiveTimeoutSpec.scala +++ b/akka-core/src/test/scala/ReceiveTimeoutSpec.scala @@ -63,6 +63,6 @@ class ReceiveTimeoutSpec extends JUnitSuite { timeoutActor ! Tick // timeout already after 500 ms, so 1 second wait should be enough - assert(timeoutLatch.tryAwait(1, TimeUnit.SECONDS) == false) + assert(timeoutLatch.tryAwait(3, TimeUnit.SECONDS) == false) } } \ No newline at end of file