From 4afdff39d74d25f5b7b09822361ed49f4a9ee2cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= Date: Mon, 16 Jan 2012 12:05:59 +0200 Subject: [PATCH] Support Unicode in file names on Windows NT --- youtube_dl/__init__.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index be599a2b2..52da3b859 100755 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -305,7 +305,14 @@ def _encodeFilename(s): """ assert type(s) == type(u'') - return s.encode(sys.getfilesystemencoding(), 'ignore') + + if sys.platform == 'win32' and sys.getwindowsversion().major >= 5: + # Pass u'' directly to use Unicode APIs on Windows 2000 and up + # (Detecting Windows NT 4 is tricky because 'major >= 4' would + # match Windows 9x series as well. Besides, NT 4 is obsolete.) + return s + else: + return s.encode(sys.getfilesystemencoding(), 'ignore') class DownloadError(Exception): """Download Error exception.