diff --git a/RELICENSE/tarmo.md b/RELICENSE/tarmo.md new file mode 100644 index 00000000..67c6c7a0 --- /dev/null +++ b/RELICENSE/tarmo.md @@ -0,0 +1,15 @@ +# Permission to Relicense under MPLv2 or any other OSI approved license chosen by the current ZeroMQ BDFL + +This is a statement by Tarmo Tänav that grants permission to +relicense its copyrights in the libzmq C++ library (ZeroMQ) under the +Mozilla Public License v2 (MPLv2) or any other Open Source Initiative +approved license chosen by the current ZeroMQ BDFL (Benevolent +Dictator for Life). + +A portion of the commits made by the Github handle "tarmo", with +commit author "Tarmo Tänav ", are copyright of Tarmo Tänav. +This document hereby grants the libzmq project team to relicense libzmq, +including all past, present and future contributions of the author listed above. + +Tarmo Tänav +2020/08/29 diff --git a/src/xpub.cpp b/src/xpub.cpp index 93baa9da..e806b8e4 100644 --- a/src/xpub.cpp +++ b/src/xpub.cpp @@ -299,6 +299,9 @@ int zmq::xpub_t::xsend (msg_t *msg_) // For the first part of multi-part message, find the matching pipes. if (!_more_send) { + // Ensure nothing from previous failed attempt to send is left matched + _dist.unmatch (); + if (unlikely (_manual && _last_pipe && _send_last_pipe)) { _subscriptions.match (static_cast (msg_->data ()), msg_->size (), mark_last_pipe_as_matching,