diff --git a/akka-zeromq/src/main/scala/akka/zeromq/ConcurrentSocketActor.scala b/akka-zeromq/src/main/scala/akka/zeromq/ConcurrentSocketActor.scala index 71b7b185f0..3f9cb48f01 100644 --- a/akka-zeromq/src/main/scala/akka/zeromq/ConcurrentSocketActor.scala +++ b/akka-zeromq/src/main/scala/akka/zeromq/ConcurrentSocketActor.scala @@ -206,7 +206,8 @@ private[zeromq] class ConcurrentSocketActor(params: Seq[SocketOption]) extends A } result match { case null ⇒ - if (currentFrames.isEmpty) currentFrames + if (socket.hasReceiveMore) receiveMessage(mode, currentFrames) + else if (currentFrames.isEmpty) currentFrames else throw new IllegalStateException("no more frames available while socket.hasReceivedMore==true") case bytes ⇒ val frames = currentFrames :+ Frame(if (bytes.length == 0) noBytes else bytes)