From f4a4bca7a93aa6d4780404b98ce63e62a1278a0b Mon Sep 17 00:00:00 2001 From: Ruud Date: Sat, 14 Jan 2012 21:09:26 +0100 Subject: [PATCH] Some more encoding --- couchpotato/core/helpers/encoding.py | 17 ++++++++++------- couchpotato/core/plugins/scanner/main.py | 4 ++-- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/couchpotato/core/helpers/encoding.py b/couchpotato/core/helpers/encoding.py index 6e521673..de53fa84 100644 --- a/couchpotato/core/helpers/encoding.py +++ b/couchpotato/core/helpers/encoding.py @@ -20,13 +20,7 @@ def simplifyString(original): def toUnicode(original, *args): try: - if type(original) == str: - try: - from couchpotato.environment import Env - return original.decode(Env.get('encoding')) - except UnicodeDecodeError: - raise - elif type(original) is unicode: + if type(original) is unicode: return original else: return unicode(original, *args) @@ -35,6 +29,15 @@ def toUnicode(original, *args): ascii_text = str(original).encode('string_escape') return unicode(ascii_text) +def ek(original, *args): + if type(original) in [str, unicode]: + try: + from couchpotato.environment import Env + return original.decode(Env.get('encoding')) + except UnicodeDecodeError: + return toUnicode(original, *args) + + return original def isInt(value): try: diff --git a/couchpotato/core/plugins/scanner/main.py b/couchpotato/core/plugins/scanner/main.py index c6220fdf..dcd94163 100644 --- a/couchpotato/core/plugins/scanner/main.py +++ b/couchpotato/core/plugins/scanner/main.py @@ -1,6 +1,6 @@ from couchpotato import get_session from couchpotato.core.event import fireEvent, addEvent -from couchpotato.core.helpers.encoding import toUnicode, simplifyString +from couchpotato.core.helpers.encoding import toUnicode, simplifyString, ek from couchpotato.core.helpers.variable import getExt, getImdb, tryInt from couchpotato.core.logger import CPLog from couchpotato.core.plugins.base import Plugin @@ -145,7 +145,7 @@ class Scanner(Plugin): # Scan all files of the folder if no files are set if len(files) == 0: files = [] - for root, dirs, walk_files in os.walk(folder): + for root, dirs, walk_files in os.walk(ek(folder)): for filename in walk_files: files.append(os.path.join(root, filename))