diff --git a/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c b/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c index c48c65a294dba380d372efa745f82b7304935a5d..d85b2cbc10618ee3ec4fefc0ddf4641a30025d76 100644 --- a/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c +++ b/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c @@ -120,6 +120,7 @@ void s_stream_ch_delete(dap_stream_ch_t* a_ch , void* a_arg) (void) a_arg; log_it(L_DEBUG, "Stream ch chain net srv delete"); dap_chain_net_srv_call_closed_all( a_ch); + DAP_DEL_Z(a_ch->internal); } static bool s_unban_client(dap_chain_net_srv_banlist_item_t *a_item) diff --git a/modules/channel/chain-net/dap_stream_ch_chain_net.c b/modules/channel/chain-net/dap_stream_ch_chain_net.c index 04a6991b8bbed305cd4c7e17c6c0bb24fb7d7266..c30be87149616f7766a33855c02ceac8f7805b7a 100644 --- a/modules/channel/chain-net/dap_stream_ch_chain_net.c +++ b/modules/channel/chain-net/dap_stream_ch_chain_net.c @@ -177,6 +177,7 @@ void s_stream_ch_delete(dap_stream_ch_t* a_ch, void* a_arg) session_data_del(a_ch->stream->session->id); pthread_mutex_unlock(&l_ch_chain_net->mutex); } + DAP_DEL_Z(a_ch->internal); } /** diff --git a/modules/channel/chain-voting/dap_stream_ch_chain_voting.c b/modules/channel/chain-voting/dap_stream_ch_chain_voting.c index 20862782196c8b2e55425a395d7b9301ad173855..a289daba669399d30553ed47dfc39a5a7fd3c36c 100644 --- a/modules/channel/chain-voting/dap_stream_ch_chain_voting.c +++ b/modules/channel/chain-voting/dap_stream_ch_chain_voting.c @@ -285,8 +285,9 @@ static void s_stream_ch_new(dap_stream_ch_t* a_ch, void* a_arg) { l_ch_chain_voting->ch = a_ch; } -static void s_stream_ch_delete(dap_stream_ch_t* a_ch, void* a_arg) { - a_ch->internal = NULL; // To prevent its cleaning in worker +static void s_stream_ch_delete(dap_stream_ch_t* a_ch, void* a_arg) +{ + DAP_DEL_Z(a_ch->internal); } static void s_packet_in_callback_handler(void *a_arg)