some utp asserts
This commit is contained in:
parent
51c10cc76f
commit
7a48e90246
|
@ -259,23 +259,13 @@ struct utp_socket_impl
|
||||||
, m_attached(true)
|
, m_attached(true)
|
||||||
, m_nagle(true)
|
, m_nagle(true)
|
||||||
{
|
{
|
||||||
|
TORRENT_ASSERT(m_userdata);
|
||||||
for (int i = 0; i != num_delay_hist; ++i)
|
for (int i = 0; i != num_delay_hist; ++i)
|
||||||
m_delay_sample_hist[i] = UINT_MAX;
|
m_delay_sample_hist[i] = UINT_MAX;
|
||||||
}
|
}
|
||||||
|
|
||||||
~utp_socket_impl();
|
~utp_socket_impl();
|
||||||
|
|
||||||
void init(udp::endpoint const& ep, boost::uint16_t id, void* userdata
|
|
||||||
, utp_socket_manager* sm)
|
|
||||||
{
|
|
||||||
m_remote_address = ep.address();
|
|
||||||
m_port = ep.port();
|
|
||||||
m_send_id = id + 1;
|
|
||||||
m_recv_id = id;
|
|
||||||
m_userdata = userdata;
|
|
||||||
m_sm = sm;
|
|
||||||
}
|
|
||||||
|
|
||||||
void tick(ptime const& now);
|
void tick(ptime const& now);
|
||||||
void init_mtu(int link_mtu, int utp_mtu);
|
void init_mtu(int link_mtu, int utp_mtu);
|
||||||
bool incoming_packet(char const* buf, int size
|
bool incoming_packet(char const* buf, int size
|
||||||
|
@ -806,6 +796,7 @@ void utp_stream::on_write(void* self, size_t bytes_transferred, error_code const
|
||||||
void utp_stream::on_connect(void* self, error_code const& ec, bool kill)
|
void utp_stream::on_connect(void* self, error_code const& ec, bool kill)
|
||||||
{
|
{
|
||||||
utp_stream* s = (utp_stream*)self;
|
utp_stream* s = (utp_stream*)self;
|
||||||
|
TORRENT_ASSERT(s);
|
||||||
|
|
||||||
UTP_LOGV("%8p: calling connect handler ec:%s kill:%d\n"
|
UTP_LOGV("%8p: calling connect handler ec:%s kill:%d\n"
|
||||||
, s->m_impl, ec.message().c_str(), kill);
|
, s->m_impl, ec.message().c_str(), kill);
|
||||||
|
@ -875,6 +866,7 @@ void utp_stream::add_write_buffer(void const* buf, size_t len)
|
||||||
// handler immediately.
|
// handler immediately.
|
||||||
void utp_stream::set_read_handler(handler_t h)
|
void utp_stream::set_read_handler(handler_t h)
|
||||||
{
|
{
|
||||||
|
TORRENT_ASSERT(m_impl->m_userdata);
|
||||||
m_impl->m_read_handler = h;
|
m_impl->m_read_handler = h;
|
||||||
if (m_impl->test_socket_state()) return;
|
if (m_impl->test_socket_state()) return;
|
||||||
|
|
||||||
|
@ -985,6 +977,7 @@ void utp_stream::set_write_handler(handler_t h)
|
||||||
|
|
||||||
TORRENT_ASSERT(m_impl->m_write_buffer_size > 0);
|
TORRENT_ASSERT(m_impl->m_write_buffer_size > 0);
|
||||||
|
|
||||||
|
TORRENT_ASSERT(m_impl->m_userdata);
|
||||||
m_impl->m_write_handler = h;
|
m_impl->m_write_handler = h;
|
||||||
m_impl->m_written = 0;
|
m_impl->m_written = 0;
|
||||||
if (m_impl->test_socket_state()) return;
|
if (m_impl->test_socket_state()) return;
|
||||||
|
@ -1110,6 +1103,7 @@ bool utp_socket_impl::destroy()
|
||||||
bool cancelled = cancel_handlers(asio::error::operation_aborted, true);
|
bool cancelled = cancel_handlers(asio::error::operation_aborted, true);
|
||||||
|
|
||||||
m_userdata = 0;
|
m_userdata = 0;
|
||||||
|
|
||||||
m_read_buffer.clear();
|
m_read_buffer.clear();
|
||||||
m_read_buffer_size = 0;
|
m_read_buffer_size = 0;
|
||||||
|
|
||||||
|
@ -1930,6 +1924,10 @@ bool utp_socket_impl::cancel_handlers(error_code const& ec, bool kill)
|
||||||
{
|
{
|
||||||
TORRENT_ASSERT(ec);
|
TORRENT_ASSERT(ec);
|
||||||
bool ret = m_read_handler || m_write_handler || m_connect_handler;
|
bool ret = m_read_handler || m_write_handler || m_connect_handler;
|
||||||
|
|
||||||
|
// calling the callbacks with m_userdata being 0 will just crash
|
||||||
|
TORRENT_ASSERT(ret == bool(m_userdata));
|
||||||
|
|
||||||
if (m_read_handler) m_read_handler(m_userdata, 0, ec, kill);
|
if (m_read_handler) m_read_handler(m_userdata, 0, ec, kill);
|
||||||
m_read_handler = 0;
|
m_read_handler = 0;
|
||||||
if (m_write_handler) m_write_handler(m_userdata, 0, ec, kill);
|
if (m_write_handler) m_write_handler(m_userdata, 0, ec, kill);
|
||||||
|
|
Loading…
Reference in New Issue