zeromq/libzmq — pull request #291 by rcxdude (2012-03-25 17:19:08+00:00)
Title: Fix for issue #307

dist_t distribute() was skipping over pipes when one failed because the non-working pipe got swapped with a working pipe but the write was never retried on that pipe. This fix retries the write with the same index so the newly swapped pipe is also written to. This should stop apparently dropped PUB/XPUB messages due to closed SUB sockets.