From 74dc99a656e7e329245d5e04ca10fa27d6bb3920 Mon Sep 17 00:00:00 2001 From: Alexander Golubev Date: Thu, 24 Sep 2015 22:25:06 -0400 Subject: [PATCH] +str #18486 Make sure that Source.subscriber's Subscriber throws if subscribed more than once --- .../src/main/scala/akka/stream/impl/StreamLayout.scala | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/akka-stream/src/main/scala/akka/stream/impl/StreamLayout.scala b/akka-stream/src/main/scala/akka/stream/impl/StreamLayout.scala index 59dbc6a62d..b00b4b0a8f 100644 --- a/akka-stream/src/main/scala/akka/stream/impl/StreamLayout.scala +++ b/akka-stream/src/main/scala/akka/stream/impl/StreamLayout.scala @@ -379,11 +379,9 @@ private[stream] final class VirtualProcessor[T] extends Processor[T, T] { case Completed ⇒ tryOnComplete(s) case Failed(ex) ⇒ tryOnError(s, ex) case Allowed ⇒ // all good - } } catch { - case ex @ canNotSubscribeTheSameSubscriberMultipleTimesException ⇒ throw ex - case NonFatal(ex) ⇒ sub.cancel() + case NonFatal(ex) ⇒ if (isCancelled) throw ex else sub.cancel() } } }