Merge pull request #168 from msune/master

Fix ROUTER's xhas_out() in MANDATORY mode
This commit is contained in:
Luca Boccassi 2017-07-21 10:48:53 +01:00 committed by GitHub
commit b7d9ee5b95

View File

@ -385,10 +385,19 @@ bool zmq::router_t::xhas_in ()
bool zmq::router_t::xhas_out ()
{
// In theory, ROUTER socket is always ready for writing. Whether actual
// attempt to write succeeds depends on whitch pipe the message is going
// to be routed to.
return true;
// In theory, ROUTER socket is always ready for writing (except when
// MANDATORY is set). Whether actual attempt to write succeeds depends
// on whitch pipe the message is going to be routed to.
if(!mandatory)
return true;
bool has_out = false;
outpipes_t::iterator it;
for (it = outpipes.begin (); it != outpipes.end (); ++it)
has_out |= it->second.pipe->check_hwm();
return has_out;
}
zmq::blob_t zmq::router_t::get_credential () const