From 7c298f5d14e9ef47b812983fbb8a8f446b536fb5 Mon Sep 17 00:00:00 2001 From: Martijn Otto Date: Wed, 7 Nov 2018 09:24:50 +0100 Subject: No longer use a list for registering self references in the abstract tcp server Updated assert message Use a local variable that won't destruct at the end of the if-branch Updated comment --- contrib/epee/include/net/abstract_tcp_server2.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'contrib/epee/include/net/abstract_tcp_server2.h') diff --git a/contrib/epee/include/net/abstract_tcp_server2.h b/contrib/epee/include/net/abstract_tcp_server2.h index 3f726a352..df2b9d1b2 100644 --- a/contrib/epee/include/net/abstract_tcp_server2.h +++ b/contrib/epee/include/net/abstract_tcp_server2.h @@ -155,7 +155,8 @@ namespace net_utils //this should be the last one, because it could be wait on destructor, while other activities possible on other threads t_protocol_handler m_protocol_handler; //typename t_protocol_handler::config_type m_dummy_config; - std::list > > m_self_refs; // add_ref/release support + size_t m_reference_count = 0; // reference count managed through add_ref/release support + boost::shared_ptr > m_self_ref; // the reference to hold critical_section m_self_refs_lock; critical_section m_chunking_lock; // held while we add small chunks of the big do_send() to small do_send_chunk() critical_section m_shutdown_lock; // held while shutting down -- cgit v1.2.3