diff --git a/deluge/common.py b/deluge/common.py index 3acccd780..50a94177a 100644 --- a/deluge/common.py +++ b/deluge/common.py @@ -591,7 +591,7 @@ def utf8_encoded(s): """ if isinstance(s, str): - s = decode_string(s, locale.getpreferredencoding()) + s = decode_string(s) elif isinstance(s, unicode): s = s.encode("utf8", "ignore") return s diff --git a/deluge/core/torrent.py b/deluge/core/torrent.py index 3702c1f3c..38ff6d613 100644 --- a/deluge/core/torrent.py +++ b/deluge/core/torrent.py @@ -793,16 +793,20 @@ class Torrent(object): def move_storage(self, dest): """Move a torrent's storage location""" - if not os.path.exists(dest): + + # Convert path from utf8 to unicode + dest_u=unicode(dest,"utf-8") + + if not os.path.exists(dest_u): try: # Try to make the destination path if it doesn't exist - os.makedirs(dest) + os.makedirs(dest_u) except IOError, e: log.exception(e) - log.error("Could not move storage for torrent %s since %s does not exist and could not create the directory.", self.torrent_id, dest) + log.error("Could not move storage for torrent %s since %s does not exist and could not create the directory.", self.torrent_id, dest_u) return False try: - self.handle.move_storage(dest.encode("utf8")) + self.handle.move_storage(dest_u) except: return False