Bladeren bron

Better tests. peer_laden is needed beacuse the peer might have

gotten new request if the piece was fully downloaded and found
to be bad.
master
Richard Nyberg 20 jaren geleden
bovenliggende
commit
1e1846b8f3
1 gewijzigde bestanden met toevoegingen van 2 en 2 verwijderingen
  1. +2
    -2
      btpd/policy_if.c

+ 2
- 2
btpd/policy_if.c Bestand weergeven

@@ -261,7 +261,7 @@ cm_on_block(struct peer *p, uint32_t index, uint32_t begin, uint32_t length,


if (tp->endgame) { if (tp->endgame) {
BTPDQ_FOREACH(p, &tp->peers, cm_entry) { BTPDQ_FOREACH(p, &tp->peers, cm_entry) {
if (peer_has(p, index) && peer_leech_ok(p)) if (peer_has(p, index) && p->nreqs_out > 0)
peer_cancel(p, index, begin, length); peer_cancel(p, index, begin, length);
} }
if (pc->ngot == pc->nblocks) if (pc->ngot == pc->nblocks)
@@ -272,7 +272,7 @@ cm_on_block(struct peer *p, uint32_t index, uint32_t begin, uint32_t length,
pc->nbusy--; pc->nbusy--;
if (pc->ngot == pc->nblocks) if (pc->ngot == pc->nblocks)
cm_on_piece(pc); cm_on_piece(pc);
if (peer_leech_ok(p)) if (peer_leech_ok(p) && !peer_laden(p))
cm_assign_requests(p); cm_assign_requests(p);
} }
} }

||||||
x
 
000:0
Laden…
Annuleren
Opslaan