libtorrent
libtorrent copied to clipboard
Crash upon client connection
VCPKG 2.0.7.0-9cbecaa64 x64-win CMAKE Ninja
I am getting following error upon client connection.
assertion failed. Please file a bugreport at https://github.com/arvidn/libtorrent/issues
Please include the following information:
version: 2.0.7.0-9cbecaa64
file: 'D:\dev\vcpkg\buildtrees\libtorrent\src\69a395be36-7d480ea93f.clean\src\merkle.cpp'
line: 104
function: merkle_num_leafs
expression: blocks > 0
stack:
0: 00007FFD2598B002 libtorrent::v2::block_uploaded_alert::category +763073
1: 000000B92FD7A3E0
2: 0000000000000001
torrent-rasterbar.dll!libtorrent::assert_fail(const char * expr, int line, const char * file, const char * function, const char * value, int kind) Line 380 C++
torrent-rasterbar.dll!libtorrent::merkle_num_leafs(int blocks) Line 104 C++
torrent-rasterbar.dll!libtorrent::hash_picker::file_num_layers(libtorrent::aux::strong_typedef<int,libtorrent::aux::file_index_tag,void> idx) Line 425 C++
torrent-rasterbar.dll!libtorrent::hash_picker::pick_hashes(const libtorrent::typed_bitfield<libtorrent::aux::strong_typedef<int,libtorrent::aux::piece_index_tag,void>> & pieces) Line 189 C++
torrent-rasterbar.dll!libtorrent::torrent::pick_hashes(libtorrent::peer_connection * peer) Line 6701 C++
torrent-rasterbar.dll!libtorrent::bt_peer_connection::maybe_send_hash_request() Line 1838 C++
torrent-rasterbar.dll!libtorrent::bt_peer_connection::on_receive_impl(unsigned __int64 bytes_transferred) Line 3596 C++
torrent-rasterbar.dll!libtorrent::bt_peer_connection::on_receive(const boost::system::error_code & error, unsigned __int64 bytes_transferred) Line 2729 C++
torrent-rasterbar.dll!libtorrent::peer_connection::on_receive_data(const boost::system::error_code & error, unsigned __int64 bytes_transferred) Line 6172 C++
torrent-rasterbar.dll!libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>::operator()<boost::system::error_code const &,unsigned __int64 const &>(const boost::system::error_code & <a_0>, const unsigned __int64 & <a_1>) Line 334 C++
torrent-rasterbar.dll!boost::asio::detail::binder2<libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::system::error_code,unsigned __int64>::operator()() Line 292 C++
torrent-rasterbar.dll!boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::system::error_code,unsigned __int64>,libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>>(boost::asio::detail::binder2<libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::system::error_code,unsigned __int64> & function, libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120> & context) Line 56 C++
torrent-rasterbar.dll!boost::asio::detail::handler_work<libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::asio::any_io_executor,void>::complete<boost::asio::detail::binder2<libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::system::error_code,unsigned __int64>>(boost::asio::detail::binder2<libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::system::error_code,unsigned __int64> & function, libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120> & handler) Line 513 C++
torrent-rasterbar.dll!boost::asio::detail::win_iocp_socket_recv_op<boost::asio::mutable_buffer,libtorrent::aux::handler<libtorrent::peer_connection,void (__cdecl libtorrent::peer_connection::*)(boost::system::error_code const &,unsigned __int64),{libtorrent::peer_connection::on_receive_data,0},{libtorrent::peer_connection::on_error,0},{libtorrent::peer_connection::on_exception,0},libtorrent::aux::handler_storage<584,1>,1120>,boost::asio::any_io_executor>::do_complete(void * owner, boost::asio::detail::win_iocp_operation * base, const boost::system::error_code & result_ec, unsigned __int64 bytes_transferred) Line 107 C++
torrent-rasterbar.dll!boost::asio::detail::win_iocp_operation::complete(void * owner, const boost::system::error_code & ec, unsigned __int64 bytes_transferred) Line 48 C++
torrent-rasterbar.dll!boost::asio::detail::win_iocp_io_context::do_one(unsigned long msec, boost::asio::detail::win_iocp_thread_info & this_thread, boost::system::error_code & ec) Line 474 C++
torrent-rasterbar.dll!boost::asio::detail::win_iocp_io_context::run(boost::system::error_code & ec) Line 204 C++
torrent-rasterbar.dll!boost::asio::io_context::run() Line 63 C++
torrent-rasterbar.dll!libtorrent::session::start::__l21::<lambda>() Line 345 C++
Ready to provide any other information required.
Edit Looks like the error was caused by buggy qtBittorent client, once updated the error stopped happening, still I suppose this should be something that need to be addressed ?