From 42e575cb6b62fe1e5d12d2e4fb5c6874d47eb57e Mon Sep 17 00:00:00 2001 From: Martin Hurton Date: Tue, 2 Mar 2010 12:41:33 +0100 Subject: Implement flow control fox ZMQ_XREP sockets --- src/xrep.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/xrep.cpp') diff --git a/src/xrep.cpp b/src/xrep.cpp index fae376b..48546d9 100644 --- a/src/xrep.cpp +++ b/src/xrep.cpp @@ -83,7 +83,6 @@ void zmq::xrep_t::xrevive (class reader_t *pipe_) void zmq::xrep_t::xrevive (class writer_t *pipe_) { - zmq_not_implemented (); } int zmq::xrep_t::xsetsockopt (int option_, const void *optval_, @@ -116,8 +115,11 @@ int zmq::xrep_t::xsend (zmq_msg_t *msg_, int flags_) } // Push message to the selected pipe. - bool written = it->second->write (msg_); - zmq_assert (written); + if (!it->second->write (msg_)) { + errno = EAGAIN; + return -1; + } + it->second->flush (); // Detach the message from the data buffer. -- cgit v1.2.3