Hi again, attached is a patch for socket_base.cpp and socket_base.hpp to be applied against the current 3.2.2 release (2012/11/23) as well as a test-case. I am pretty new to the zeromq source, so please review extra carefully. I am not sure whether we should remove the pipe from pipes array as well.
The patch solves both LIBZMQ-476 and (by coincidence) LIBZMQ-475 I reported earlier. Best regards Stefan On Dec 3, 2012, at 9:52 PM, Martin Hurton <[email protected]> wrote: >> But I cannot figure out, which pipe to terminate as I am having difficulties >> finding out, which one is connected to the peer endpoint. Also, I am not >> sure how to terminate a pipe - is it actually sufficient to call terminate >> on the pipe? If you help me to complete this one, I'll submit it as a patch. > > To terminate a pipe, you can use terminate method. The method takes a > flag which indicates whether you are to allow the pipe to process > queued messages. This is used to allow the pipe to process queued > messages, depending on the linger setting. This flag is set to true for now, I am not sure about the eventual implications for inproc sockets. > > As for endpoint tracking, I would suggest to keep separate container > for inproc connections. > > Would be great to have this covered by a test too. > > - Martin
socket_base.cpp.diff
Description: socket_base.cpp.diff
socket_base.hpp.diff
Description: socket_base.hpp.diff
test-zeromq-disconnect.cpp
Description: test-zeromq-disconnect.cpp
_______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
