diff --git a/src/tracker/torrent.rs b/src/tracker/torrent.rs index ce7d7b55f..0102b207b 100644 --- a/src/tracker/torrent.rs +++ b/src/tracker/torrent.rs @@ -32,9 +32,12 @@ impl TorrentEntry { AnnounceEvent::Completed => { let peer_old = self.peers.insert(peer.peer_id.clone(), peer.clone()); // Don't count if peer was not previously known - if peer_old.is_some() { - self.completed += 1; - did_torrent_stats_change = true; + if let Some(old_peer) = peer_old { + // Don't double count + if !old_peer.is_seeder() { + self.completed += 1; + did_torrent_stats_change = true; + } } } _ => {