]> git.bitcoin.ninja Git - youtube-dl/blobdiff - youtube_dl/__init__.py
Support Unicode in file names on Windows NT
[youtube-dl] / youtube_dl / __init__.py
index be599a2b29953b9b8c7bf6204ed5c0bee9df5733..52da3b859287cb3f1fd8fb8eedb6015019be8da4 100755 (executable)
@@ -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.