diff --git a/akka-actor/src/main/scala/akka/actor/ActorCell.scala b/akka-actor/src/main/scala/akka/actor/ActorCell.scala index c0ae63e3bc..e61e926249 100644 --- a/akka-actor/src/main/scala/akka/actor/ActorCell.scala +++ b/akka-actor/src/main/scala/akka/actor/ActorCell.scala @@ -535,9 +535,10 @@ private[akka] class ActorCell( val timeoutBeforeReceive = cancelReceiveTimeoutIfNeeded(msg) try { currentMessage = messageHandle - msg match { - case _: AutoReceivedMessage => autoReceiveMessage(messageHandle) - case msg => receiveMessage(msg) + if (msg.isInstanceOf[AutoReceivedMessage]) { + autoReceiveMessage(messageHandle) + } else { + receiveMessage(msg) } currentMessage = null // reset current message after successful invocation } catch handleNonFatalOrInterruptedException { e =>