mirror of
https://github.com/zeromq/libzmq.git
synced 2025-02-23 07:12:47 +01:00
Assert during SUB socket termination fixed.
Fair queueing algorithm was checking whether the current pipe is not closed in the middle of reading a multipart message. However, this is OK when the socket is closing down. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
This commit is contained in:
parent
e0246e32d7
commit
10fbc78e5c
@ -55,10 +55,9 @@ void zmq::fq_t::attach (reader_t *pipe_)
|
||||
|
||||
void zmq::fq_t::terminated (reader_t *pipe_)
|
||||
{
|
||||
// TODO: This is a problem with session-initiated termination. It breaks
|
||||
// message atomicity. However, for socket initiated termination it's
|
||||
// just fine.
|
||||
zmq_assert (!more || pipes [current] != pipe_);
|
||||
// Make sure that we are not closing current pipe while
|
||||
// message is half-read.
|
||||
zmq_assert (terminating || (!more || pipes [current] != pipe_));
|
||||
|
||||
// Remove the pipe from the list; adjust number of active pipes
|
||||
// accordingly.
|
||||
|
Loading…
x
Reference in New Issue
Block a user