mirror of
https://git.deluge-torrent.org/deluge
synced 2025-08-06 00:18:39 +00:00
use a platform agnostic way of combining paths in the FileTree
This commit is contained in:
parent
61b5659972
commit
dd8400558c
2 changed files with 20 additions and 2 deletions
|
@ -514,6 +514,24 @@ def is_ip(ip):
|
||||||
except socket.error:
|
except socket.error:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def path_join(*parts):
|
||||||
|
"""
|
||||||
|
An implementation of os.path.join that always uses / for the separator
|
||||||
|
to ensure that the correct paths are produced when working with internal
|
||||||
|
paths on Windows.
|
||||||
|
"""
|
||||||
|
path = ''
|
||||||
|
for part in parts:
|
||||||
|
if not part:
|
||||||
|
continue
|
||||||
|
elif part[0] == '/':
|
||||||
|
path = part
|
||||||
|
elif not path:
|
||||||
|
path = part
|
||||||
|
else:
|
||||||
|
path += '/' + part
|
||||||
|
return path
|
||||||
|
|
||||||
class VersionSplit(object):
|
class VersionSplit(object):
|
||||||
"""
|
"""
|
||||||
Used for comparing version numbers.
|
Used for comparing version numbers.
|
||||||
|
|
|
@ -49,7 +49,7 @@ try:
|
||||||
except ImportError:
|
except ImportError:
|
||||||
from sha import sha
|
from sha import sha
|
||||||
|
|
||||||
from deluge import bencode
|
from deluge import bencode, common
|
||||||
from deluge.log import LOG as log
|
from deluge.log import LOG as log
|
||||||
import deluge.configmanager
|
import deluge.configmanager
|
||||||
|
|
||||||
|
@ -289,7 +289,7 @@ class FileTree2(object):
|
||||||
"""
|
"""
|
||||||
def walk(directory, parent_path):
|
def walk(directory, parent_path):
|
||||||
for path in directory["contents"].keys():
|
for path in directory["contents"].keys():
|
||||||
full_path = os.path.join(parent_path, path)
|
full_path = common.path_join(parent_path, path)
|
||||||
if directory["contents"][path]["type"] == "dir":
|
if directory["contents"][path]["type"] == "dir":
|
||||||
directory["contents"][path] = callback(full_path, directory["contents"][path]) or \
|
directory["contents"][path] = callback(full_path, directory["contents"][path]) or \
|
||||||
directory["contents"][path]
|
directory["contents"][path]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue