diff --git a/akka-actor-tests/src/test/scala/akka/actor/LoggingReceiveSpec.scala b/akka-actor-tests/src/test/scala/akka/actor/LoggingReceiveSpec.scala index 6d0e3cd5de..8c0d5d1711 100644 --- a/akka-actor-tests/src/test/scala/akka/actor/LoggingReceiveSpec.scala +++ b/akka-actor-tests/src/test/scala/akka/actor/LoggingReceiveSpec.scala @@ -126,7 +126,6 @@ class LoggingReceiveSpec } }) actor ! PoisonPill - expectMsg(300 millis, EventHandler.Debug(actor.underlyingActor, "received AutoReceiveMessage Init")) expectMsg(300 millis, EventHandler.Debug(actor.underlyingActor, "received AutoReceiveMessage PoisonPill")) } diff --git a/akka-actor/src/main/scala/akka/actor/ActorCell.scala b/akka-actor/src/main/scala/akka/actor/ActorCell.scala index 0651a067f3..104d4b18bc 100644 --- a/akka-actor/src/main/scala/akka/actor/ActorCell.scala +++ b/akka-actor/src/main/scala/akka/actor/ActorCell.scala @@ -233,6 +233,7 @@ private[akka] class ActorCell( val created = newActor(restart = false) actor.set(created) created.preStart() + checkReceiveTimeout case instance if recreation ⇒ restart(new Exception("Restart commanded"), None, None) case _ ⇒ @@ -318,7 +319,7 @@ private[akka] class ActorCell( var isTerminated = terminated guard.lock.lock() try { - if (!isShutdown) { + if (!isTerminated) { currentMessage = messageHandle try { try { diff --git a/akka-actor/src/main/scala/akka/dispatch/MessageHandling.scala b/akka-actor/src/main/scala/akka/dispatch/MessageHandling.scala index 372ff9a5f2..ba75df13e0 100644 --- a/akka-actor/src/main/scala/akka/dispatch/MessageHandling.scala +++ b/akka-actor/src/main/scala/akka/dispatch/MessageHandling.scala @@ -284,7 +284,7 @@ abstract class MessageDispatcher extends Serializable { /** * Returns the "current" emptiness status of the mailbox for the specified actor */ - def mailboxIsEmpty(actor: ActorCell): Boolean = actor.mailbox.hasMessages + def mailboxIsEmpty(actor: ActorCell): Boolean = !actor.mailbox.hasMessages /** * Returns the amount of tasks queued for execution