diff options
-rw-r--r-- | src/tcp_connecter.cpp | 2 | ||||
-rw-r--r-- | src/xrep.cpp | 31 |
2 files changed, 17 insertions, 16 deletions
diff --git a/src/tcp_connecter.cpp b/src/tcp_connecter.cpp index 00eb5f6..487f4f5 100644 --- a/src/tcp_connecter.cpp +++ b/src/tcp_connecter.cpp @@ -59,7 +59,7 @@ zmq::tcp_connecter_t::tcp_connecter_t (class io_thread_t *io_thread_, // TODO: set_addess should be called separately, so that the error // can be propagated. int rc = set_address (address_); - zmq_assert (rc == 0); + errno_assert (rc == 0); } zmq::tcp_connecter_t::~tcp_connecter_t () diff --git a/src/xrep.cpp b/src/xrep.cpp index 9b57435..a11b8c1 100644 --- a/src/xrep.cpp +++ b/src/xrep.cpp @@ -130,22 +130,23 @@ int zmq::xrep_t::xsend (msg_t *msg_, int flags_) // Find the pipe associated with the peer ID stored in the prefix. // If there's no such pipe just silently ignore the message. - zmq_assert (msg_->size () == 4); - uint32_t peer_id = get_uint32 ((unsigned char*) msg_->data ()); - outpipes_t::iterator it = outpipes.find (peer_id); - - if (it != outpipes.end ()) { - current_out = it->second.pipe; - msg_t empty; - int rc = empty.init (); - errno_assert (rc == 0); - if (!current_out->check_write (&empty)) { - it->second.active = false; - more_out = false; - current_out = NULL; + if (msg_->size () == 4) { + uint32_t peer_id = get_uint32 ((unsigned char*) msg_->data ()); + outpipes_t::iterator it = outpipes.find (peer_id); + + if (it != outpipes.end ()) { + current_out = it->second.pipe; + msg_t empty; + int rc = empty.init (); + errno_assert (rc == 0); + if (!current_out->check_write (&empty)) { + it->second.active = false; + more_out = false; + current_out = NULL; + } + rc = empty.close (); + errno_assert (rc == 0); } - rc = empty.close (); - errno_assert (rc == 0); } } |