mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-12 18:40:27 +01:00
fixes #1565: Allow session to flush commands on an engine error
This commit is contained in:
parent
e56b486735
commit
54799c8c6f
@ -428,6 +428,9 @@ void zmq::session_base_t::engine_error (
|
||||
|
||||
if (zap_pipe)
|
||||
zap_pipe->check_read ();
|
||||
|
||||
zmq_assert(socket);
|
||||
socket->flush_commands();
|
||||
}
|
||||
|
||||
void zmq::session_base_t::process_term (int linger_)
|
||||
|
@ -1417,6 +1417,13 @@ void zmq::socket_base_t::check_destroy ()
|
||||
}
|
||||
}
|
||||
|
||||
void zmq::socket_base_t::flush_commands ()
|
||||
{
|
||||
ENTER_MUTEX();
|
||||
process_commands (0, false);
|
||||
EXIT_MUTEX();
|
||||
}
|
||||
|
||||
void zmq::socket_base_t::read_activated (pipe_t *pipe_)
|
||||
{
|
||||
xread_activated (pipe_);
|
||||
|
@ -109,6 +109,8 @@ namespace zmq
|
||||
void out_event ();
|
||||
void timer_event (int id_);
|
||||
|
||||
void flush_commands();
|
||||
|
||||
// i_pipe_events interface implementation.
|
||||
void read_activated (pipe_t *pipe_);
|
||||
void write_activated (pipe_t *pipe_);
|
||||
|
Loading…
Reference in New Issue
Block a user