This is an automated email from the ASF dual-hosted git repository. chug pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git
The following commit(s) were added to refs/heads/main by this push: new 18bce61 DISPATCH-2088: Free message_stream_data objects on connection thread 18bce61 is described below commit 18bce61e79bd8731be0241ba04db3841159da5e5 Author: Chuck Rolke <c...@apache.org> AuthorDate: Thu Apr 29 15:21:15 2021 -0400 DISPATCH-2088: Free message_stream_data objects on connection thread and not on the core thread. Move flush_outgoing_bufs call to handle_disconnected function. This closes #1174 --- src/adaptors/tcp_adaptor.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/adaptors/tcp_adaptor.c b/src/adaptors/tcp_adaptor.c index ddd7409..4a260bb 100644 --- a/src/adaptors/tcp_adaptor.c +++ b/src/adaptors/tcp_adaptor.c @@ -452,7 +452,6 @@ static void free_qdr_tcp_connection(qdr_tcp_connection_t* tc) if (tc->activate_timer) { qd_timer_free(tc->activate_timer); } - flush_outgoing_buffs(tc); sys_mutex_free(tc->activation_lock); //proactor will free the socket free_qdr_tcp_connection_t(tc); @@ -495,6 +494,8 @@ static void handle_disconnected(qdr_tcp_connection_t* conn) qdr_delivery_decref(tcp_adaptor->core, conn->initial_delivery, "tcp-adaptor.handle_disconnected - initial_delivery"); conn->initial_delivery = 0; } + flush_outgoing_buffs(conn); + //need to free on core thread to avoid deleting while in use by management agent qdr_action_t *action = qdr_action(qdr_del_tcp_connection_CT, "delete_tcp_connection"); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org