From 388ec810bf1cbef1bad3da2f8a3a0ac34c2ee213 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Sat, 21 Jan 2012 01:13:55 +0100 Subject: [PATCH] Fixing inverted logic --- akka-actor/src/main/scala/akka/dispatch/Mailbox.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala index 383db2f92e..abed403c44 100644 --- a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala +++ b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala @@ -178,7 +178,7 @@ private[akka] abstract class Mailbox(val actor: ActorCell) extends MessageQueue private final def processMailbox(): Unit = if (dispatcher.isThroughputDefined) process(dispatcher.throughput) else process(1) @tailrec private final def process(left: Int, deadlineNs: Long = if (dispatcher.isThroughputDeadlineTimeDefined) System.nanoTime + dispatcher.throughputDeadlineTime.toNanos else 0l): Unit = - if ((shouldProcessMessage) && (left > 0 || (dispatcher.isThroughputDeadlineTimeDefined && System.nanoTime >= deadlineNs))) { + if ((left > 0) && (shouldProcessMessage) && (!dispatcher.isThroughputDeadlineTimeDefined || System.nanoTime < deadlineNs)) { val next = dequeue() if (next ne null) { if (Mailbox.debug) println(actor.self + " processing message " + next)