Unverified Commit eb54966c authored by Luca Boccassi's avatar Luca Boccassi Committed by GitHub

Merge pull request #3757 from sigiesec/fix-windows-signaler-regression

Fix windows signaler regression
parents 9b67fe8a 9f16513e
......@@ -183,10 +183,14 @@ void zmq::signaler_t::send ()
ssize_t sz = write (_w, &inc, sizeof (inc));
errno_assert (sz == sizeof (inc));
#elif defined ZMQ_HAVE_WINDOWS
unsigned char dummy = 0;
const int nbytes =
::send (_w, reinterpret_cast<char *> (&dummy), sizeof (dummy), 0);
wsa_assert (nbytes != SOCKET_ERROR);
const char dummy = 0;
int nbytes;
do {
nbytes = ::send (_w, &dummy, sizeof (dummy), 0);
wsa_assert (nbytes != SOCKET_ERROR);
// wsa_assert does not abort on WSAEWOULDBLOCK. If we get this, we retry.
} while (nbytes == SOCKET_ERROR);
// Given the small size of dummy (should be 1) expect that send was able to send everything.
zmq_assert (nbytes == sizeof (dummy));
#elif defined ZMQ_HAVE_VXWORKS
unsigned char dummy = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment