fix seeding for peers that downloaded files
This commit is contained in:
parent
45293a128c
commit
13f436cd48
3 changed files with 7 additions and 4 deletions
2
bin/lsd
2
bin/lsd
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python2
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# vi:si:et:sw=4:sts=4:ts=4
|
# vi:si:et:sw=4:sts=4:ts=4
|
||||||
# GPL 2013
|
# GPL 2013
|
||||||
|
|
|
@ -101,7 +101,9 @@ class Site:
|
||||||
requested = r['data']['ids']
|
requested = r['data']['ids']
|
||||||
for sha1 in requested:
|
for sha1 in requested:
|
||||||
if sha1 not in self.t.handles:
|
if sha1 not in self.t.handles:
|
||||||
self.t.add_torrent(self.t.torrent_path(sha1))
|
f = self.get_file(sha1)
|
||||||
|
if f:
|
||||||
|
self.t.seed(f['path'], f['sha1'])
|
||||||
for sha1 in self.t.handles.keys():
|
for sha1 in self.t.handles.keys():
|
||||||
if sha1 not in self.t.downloads and sha1 not in requested:
|
if sha1 not in self.t.downloads and sha1 not in requested:
|
||||||
self.t.remove(sha1)
|
self.t.remove(sha1)
|
||||||
|
|
|
@ -215,9 +215,10 @@ class TorrentClient:
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def seed(self, filename):
|
def seed(self, filename, sha1=None):
|
||||||
filename = os.path.abspath(filename)
|
filename = os.path.abspath(filename)
|
||||||
sha1 = get_sha1(filename)
|
if not sha1:
|
||||||
|
sha1 = get_sha1(filename)
|
||||||
if not sha1 in self.handles:
|
if not sha1 in self.handles:
|
||||||
torrent = self.torrent_path(sha1)
|
torrent = self.torrent_path(sha1)
|
||||||
if not os.path.exists(torrent):
|
if not os.path.exists(torrent):
|
||||||
|
|
Loading…
Reference in a new issue