X-Git-Url: https://git.phdru.name/?p=extfs.d.git;a=blobdiff_plain;f=torrent;h=43bb2b74dc1b4395b5320e1362e34fcbb9d7b5da;hp=712a653be9948ecf56d81c9797f70dbd7dc611c7;hb=c1fd444890ddd1bb30699e88037ff9815e9a10ff;hpb=8a9eba16c0a20cdab62252b8c0d3408969f97768 diff --git a/torrent b/torrent index 712a653..43bb2b7 100755 --- a/torrent +++ b/torrent @@ -71,10 +71,11 @@ def mctorrent_list(): torrent_error('Unknown name') name = info['name'] + encoding = torrent.get('encoding', None) + if 'files' in info: files = info['files'] paths = [] - encoding = torrent.get('encoding', None) for file in files: if 'path' not in file: torrent_error('Unknown path') @@ -89,6 +90,8 @@ def mctorrent_list(): if 'length' not in info: torrent_error('Unknown length') length = info['length'] + if charset and encoding and (charset != encoding): + name = name.decode(encoding, 'replace').encode(charset, 'replace') paths = [(name, length)] meta = [] @@ -159,17 +162,17 @@ def mctorrent_copyout(): def mctorrent_copyin(): """Put a file to the VFS""" - sys.exit("Torrent VFS doesn't support adding files") + sys.exit("Torrent VFS doesn't support adding files (read-only filesystem)") def mctorrent_rm(): """Remove a file from the VFS""" - sys.exit("Torrent VFS doesn't support removing files/directories") + sys.exit("Torrent VFS doesn't support removing files/directories (read-only filesystem)") mctorrent_rmdir = mctorrent_rm def mctorrent_mkdir(): """Create a directory in the VFS""" - sys.exit("Torrent VFS doesn't support creating directories") + sys.exit("Torrent VFS doesn't support creating directories (read-only filesystem)") def torrent_error(error_str):