Possible fix for failed to send torrent errors

This commit is contained in:
echel0n 2014-08-17 19:14:07 -07:00
parent e2d1178515
commit 4752e07733

View file

@ -142,14 +142,12 @@ class GenericClient(object):
def _get_torrent_hash(self, result): def _get_torrent_hash(self, result):
result.hash = None
if result.url.startswith('magnet'): if result.url.startswith('magnet'):
result.hash = re.findall('urn:btih:([\w]{32,40})', result.url)[0] result.hash = re.findall('urn:btih:([\w]{32,40})', result.url)[0]
if len(result.hash) == 32: if len(result.hash) == 32:
result.hash = b16encode(b32decode(result.hash)).lower() result.hash = b16encode(b32decode(result.hash)).lower()
else: else:
result.content = result.provider.getURL(result.url) result.content = result.provider.getURL(result.url)
if result.content:
info = bdecode(result.content)["info"] info = bdecode(result.content)["info"]
result.hash = sha1(bencode(info)).hexdigest() result.hash = sha1(bencode(info)).hexdigest()