From d9bd43a1fa11d44fb60b7dfe6dd8f3f3c213aeaa Mon Sep 17 00:00:00 2001 From: Patrik Nordwall Date: Fri, 31 Aug 2012 12:57:33 +0200 Subject: [PATCH] Avoid / by zero in SmallestMailboxRouter also, see #2442 --- akka-actor/src/main/scala/akka/routing/Routing.scala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/akka-actor/src/main/scala/akka/routing/Routing.scala b/akka-actor/src/main/scala/akka/routing/Routing.scala index dcd9c1cbd4..c8115b42c2 100644 --- a/akka-actor/src/main/scala/akka/routing/Routing.scala +++ b/akka-actor/src/main/scala/akka/routing/Routing.scala @@ -859,7 +859,9 @@ trait SmallestMailboxLike { this: RouterConfig ⇒ currentScore: Long = Long.MaxValue, at: Int = 0, deep: Boolean = false): ActorRef = - if (at >= targets.size) { + if (targets.isEmpty) + routeeProvider.context.system.deadLetters + else if (at >= targets.size) { if (deep) { if (proposedTarget.isTerminated) targets(ThreadLocalRandom.current.nextInt(targets.size)) else proposedTarget } else getNext(targets, proposedTarget, currentScore, 0, deep = true)