Merge pull request #450 from hurtonm/issue_447

Resolve LIBZMQ-447
This commit is contained in:
Pieter Hintjens 2012-10-29 03:21:09 -07:00
commit dcf0693d6e

View File

@ -678,11 +678,6 @@ int zmq::socket_base_t::recv (msg_t *msg_, int flags_)
return -1;
}
// Get the message.
int rc = xrecv (msg_, flags_);
if (unlikely (rc != 0 && errno != EAGAIN))
return -1;
// Once every inbound_poll_rate messages check for signals and process
// incoming commands. This happens only if we are not polling altogether
// because there are messages available all the time. If poll occurs,
@ -697,6 +692,11 @@ int zmq::socket_base_t::recv (msg_t *msg_, int flags_)
ticks = 0;
}
// Get the message.
int rc = xrecv (msg_, flags_);
if (unlikely (rc != 0 && errno != EAGAIN))
return -1;
// If we have the message, return immediately.
if (rc == 0) {
extract_flags (msg_);