merged changes from RC_1_0

This commit is contained in:
Arvid Norberg 2014-11-14 09:35:39 +00:00
parent bfb0c4fe80
commit e1d0592a57
4 changed files with 16 additions and 13 deletions

View File

@ -35,6 +35,7 @@
1.0.3 release
* fix link order bug in makefile for python binding
* fix bug in interest calculation, causing premature disconnects
* tweak flag_override_resume_data semantics to make more sense (breaks
backwards compatibility of edge-cases)

View File

@ -1 +1 @@
@LDFLAGS@ -L@top_builddir@/src/.libs
-L@top_builddir@/src/.libs @LDFLAGS@

View File

@ -53,7 +53,8 @@ packages = None
if '--bjam' in sys.argv or ldflags == None or extra_cmd == None:
del sys.argv[sys.argv.index('--bjam')]
if '--bjam' in sys.argv:
del sys.argv[sys.argv.index('--bjam')]
if not '--help' in sys.argv \
and not '--help-commands' in sys.argv:

View File

@ -1889,15 +1889,6 @@ namespace libtorrent
++m_remote_pieces_dled;
}
// it's important to update whether we're intersted in this peer before
// calling disconnect_if_redundant, otherwise we may disconnect even if
// we are interested
if (!t->has_piece_passed(index)
&& !t->is_seed()
&& !is_interesting()
&& (!t->has_picker() || t->picker().piece_priority(index) != 0))
t->peer_is_interesting(*this);
// it's important to not disconnect before we have
// updated the piece picker, otherwise we will incorrectly
// decrement the piece count without first incrementing it
@ -1919,10 +1910,20 @@ namespace libtorrent
if (t && t->has_picker())
t->picker().check_peer_invariant(m_have_piece, this);
#endif
disconnect_if_redundant();
if (is_disconnecting()) return;
}
// it's important to update whether we're intersted in this peer before
// calling disconnect_if_redundant, otherwise we may disconnect even if
// we are interested
if (!t->has_piece_passed(index)
&& !t->is_seed()
&& !is_interesting()
&& (!t->has_picker() || t->picker().piece_priority(index) != 0))
t->peer_is_interesting(*this);
disconnect_if_redundant();
if (is_disconnecting()) return;
// if we're super seeding, this might mean that somebody
// forwarded this piece. In which case we need to give
// a new piece to that peer