From 4eef9cd3412fb99ce1a1877d53c36f8bfee636da Mon Sep 17 00:00:00 2001 From: "Scott R. Parish" Date: Tue, 15 May 2012 09:06:07 -0500 Subject: [PATCH] IO#fowardFailure: catch NonFatal rather then all Throwables --- akka-actor/src/main/scala/akka/actor/IO.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/akka-actor/src/main/scala/akka/actor/IO.scala b/akka-actor/src/main/scala/akka/actor/IO.scala index 0c34548ac5..42a76de242 100644 --- a/akka-actor/src/main/scala/akka/actor/IO.scala +++ b/akka-actor/src/main/scala/akka/actor/IO.scala @@ -4,7 +4,7 @@ package akka.actor import akka.dispatch.{ Future, ExecutionContext } -import akka.util.{ ByteString, Duration } +import akka.util.{ ByteString, Duration, NonFatal } import java.net.{ SocketAddress, InetSocketAddress } import java.io.IOException import java.nio.ByteBuffer @@ -949,7 +949,7 @@ final class IOManagerActor extends Actor with ActorLogging { } private def forwardFailure(f: ⇒ Unit): Unit = { - try { f } catch { case t: Throwable ⇒ sender ! Status.Failure(t) } + try { f } catch { case NonFatal(e) ⇒ sender ! Status.Failure(e) } } private def setSocketOptions(socket: java.net.Socket, options: Seq[IO.SocketOption]) {