merged changes from RC_1_0

This commit is contained in:
Arvid Norberg 2014-12-31 09:30:23 +00:00
parent eefba55419
commit bc117e5f40
2 changed files with 8 additions and 1 deletions

View File

@ -42,6 +42,7 @@
* almost completely changed the storage interface (for custom storage) * almost completely changed the storage interface (for custom storage)
* added support for hashing pieces in multiple threads * added support for hashing pieces in multiple threads
* fix assert when removing a connected web seed
* fix bug in tracker timeout logic * fix bug in tracker timeout logic
* switch UPnP post back to HTTP 1.1 * switch UPnP post back to HTTP 1.1
* support conditional DHT get * support conditional DHT get

View File

@ -5853,8 +5853,14 @@ namespace libtorrent
return; return;
} }
peer_connection* peer = static_cast<peer_connection*>(web->peer_info.connection); peer_connection* peer = static_cast<peer_connection*>(web->peer_info.connection);
if (peer) { if (peer)
{
// if we have a connection for this web seed, we also need to
// disconnect it and clear its reference to the peer_info object
// that's part of the web_seed_entry we're about to remove
TORRENT_ASSERT(peer->m_in_use == 1337); TORRENT_ASSERT(peer->m_in_use == 1337);
peer->disconnect(boost::asio::error::operation_aborted
, peer_connection_interface::op_bittorrent);
peer->set_peer_info(0); peer->set_peer_info(0);
} }
if (has_picker()) picker().clear_peer(&web->peer_info); if (has_picker()) picker().clear_peer(&web->peer_info);