premiere-libtorrent/include/libtorrent/kademlia
Steven Siloti c2277b3ea5 fix traversal_algorithm::done() being invoked more than once
A traversal can be done while there are still outstanding queries (i.e.
m_invoke_count is non-zero) if K good responses have already been received and
none of the outstanding queries are closer than the nodes which have responded.

When this happens and the outstanding queries eventually complete or timeout
they call traversal_algorithm::failed() or traversal_algorithm::finished() as
usual which will cause traversal_algorithm::done() to be called yet again.

The fix is to always set the done flag on all queried observers in
traversal_algorithm::done() so that the observers will refrain from calling
back into the traversal.

This also makes traversal_algorithm::abort() redundant since this was the only
thing it did before it called into done().
2015-11-09 20:47:33 -08:00
..
dht_observer.hpp enable arbitrary direct dht requests and extension dht requests 2015-08-10 20:33:04 -07:00
dht_storage.hpp add more override annotation 2015-10-17 02:20:38 -04:00
dht_tracker.hpp Add set_dht_storage to session API. 2015-10-02 09:00:07 -04:00
direct_request.hpp Minor refactor in direct_traversal and some typos in bdecode header. 2015-10-08 09:15:16 -04:00
dos_blocker.hpp update copyright year 2015-06-03 05:18:48 +00:00
find_data.hpp update copyright year 2015-06-03 05:18:48 +00:00
get_item.hpp Call callback function immediately when get mutable data. 2015-08-08 20:28:53 -04:00
get_peers.hpp update copyright year 2015-06-03 05:18:48 +00:00
item.hpp landed the bdecode branch in master. lazy_bdecode/lazy_entry is now being replaced by bdecode/bdecode_node 2015-03-12 05:20:12 +00:00
msg.hpp drop support for boost 1.35 and fix some more references to the asio namespace 2015-06-06 02:10:53 -04:00
node.hpp update libsimulator submodule 2015-10-25 10:55:20 -04:00
node_entry.hpp update copyright year 2015-06-03 05:18:48 +00:00
node_id.hpp update copyright year 2015-06-03 05:18:48 +00:00
observer.hpp disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings 2015-09-06 22:55:41 -04:00
refresh.hpp update copyright year 2015-06-03 05:18:48 +00:00
routing_table.hpp Use ping instead of get_peers if current bucket is full. 2015-09-22 10:35:10 -04:00
rpc_manager.hpp Use dht_settings directly instead of add a read_only member variable. 2015-09-08 10:35:30 -04:00
traversal_algorithm.hpp fix traversal_algorithm::done() being invoked more than once 2015-11-09 20:47:33 -08:00