-
Notifications
You must be signed in to change notification settings - Fork 481
rtorrent plugin crashed when adding torrent with special utf-8 characters #1692
Copy link
Copy link
Closed
Labels
Description
Expected behaviour:
Adding entry to rtorrent without crash
Actual behaviour:
Adding entry to rtorrent but flexget crashed.
As a consequence, all the accepted entry with this run won't write to the database marked seen, and they will be downloaded again and again. However all the accepted torrent will be sent to the rtorrent, but the crash reports are bothersome.
Steps to reproduce:
When an entry with special utf-8 characters in name or path accepted and sent to rtorrent plugin.
Such as the example from the log, "Al final del túnel AKA At the End of the Tunnel 2016 1080p BluRay TrueHD 5.1 x264-PbK", "ú" is a special utf-8 characters.
The details of this torrent
'info': {'files': [{'length': 14152687941,
'path': ['Al.final.del.t\xc3\xbanel.AKA.At.the.End.of.the.Tunnel.2016.1080p.BluRay.TrueHD.5.1.x264-PbK.mkv']},
{'length': 1281,
'path': ['Al.final.del.t\xc3\xbanel.AKA.At.the.End.of.the.Tunnel.2016.1080p.BluRay.TrueHD.5.1.x264-PbK.nfo']}],
'name': 'Al.final.del.t\xc3\xbanel.AKA.At.the.End.of.the.Tunnel.2016.1080p.BluRay.TrueHD.5.1.x264-PbK',
'piece length': 4194304,
'pieces': '<3375 piece hashes>',
'private': 1,
'source': '[www.hdpter.net] HDPter'},
Config:
hdp:
rss: **********
accept_all: yes
rtorrent:
uri: scgi://127.0.0.1:5000
path: /mnt/V3T/_Movies/_HD
custom1: HD
Log:
2017-02-17 10:37 VERBOSE task hdp REJECTED: `Hacksaw Ridge 2016 1080p BluRay TrueHD Atmos 7.1 x264-PbK` by seen plugin because entry with url `http://www.hdpter.net/download.php?id=10438&passkey=ab0ee1ba02ec1f4cd892219cab827967` is already marked seen in the task hdp at 2017-02-12 22:03
2017-02-17 10:37 VERBOSE task hdp ACCEPTED: `Al final del túnel AKA At the End of the Tunnel 2016 1080p BluRay TrueHD 5.1 x264-PbK` by accept_all plugin
2017-02-17 10:37 INFO download hdp Downloading: Al final del túnel AKA At the End of the Tunnel 2016 1080p BluRay TrueHD 5.1 x264-PbK
2017-02-17 10:37 VERBOSE details hdp Summary - Accepted: 1 (Rejected: 9 Undecided: 0 Failed: 0)
2017-02-17 10:37 CRITICAL task hdp BUG: Unhandled error in plugin rtorrent: 'ascii' codec can't decode byte 0xc3 in position 333: ordinal not in range(128)
Traceback (most recent call last):
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/task.py", line 483, in __run_plugin
return method(*args, **kwargs)
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/event.py", line 23, in __call__
return self.func(*args, **kwargs)
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 531, in on_task_output
self.add_entry(client, entry, options, start=config['start'], mkdir=config['mkdir'])
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 639, in add_entry
if client.torrent(entry['torrent_info_hash']):
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 356, in torrent
resp = multi_call()
File "/usr/lib64/python2.7/xmlrpclib.py", line 1006, in __call__
return MultiCallIterator(self.__server.system.multicall(marshalled_list))
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 38, in __call__
return self.__send(self.__name, args)
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 192, in __request
verbose=self.__verbose
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 106, in request
return self.single_request(host, handler, request_body, verbose)
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 134, in single_request
return self.parse_response(sock.makefile())
File "/home/xiayu/CODE/PYTHON/flexget/lib/python2.7/site-packages/flexget/plugins/clients/rtorrent.py", line 148, in parse_response
response_body += data
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 333: ordinal not in range(128)
Additional information:
- Flexget Version: 2.9.23
- Python Version: 2.7.13
- Installation method: virtualenv pip install
- OS and version: ArchLinux
- Link to crash log:
Reactions are currently unavailable