Revert "[utils] Work around PyPy stupidity with Windows DLLs (Fixes #4392)"
authorPhilipp Hagemeister <phihag@phihag.de>
Fri, 12 Dec 2014 10:33:55 +0000 (11:33 +0100)
committerPhilipp Hagemeister <phihag@phihag.de>
Fri, 12 Dec 2014 10:33:55 +0000 (11:33 +0100)
This reverts commit 16040f46d64bad8dcc5f948288ef469dd787d3d3.

youtube_dl/compat.py
youtube_dl/utils.py

index cd46693b34f4746284e74b36af3bddd7ba8155ee..f4a85443eda5086c004040183d1779a7059c0c2e 100644 (file)
@@ -1,10 +1,8 @@
 from __future__ import unicode_literals
 
-import ctypes
 import getpass
 import optparse
 import os
-import platform
 import re
 import subprocess
 import sys
@@ -328,22 +326,6 @@ def workaround_optparse_bug9161():
         optparse.OptionGroup.add_option = _compat_add_option
 
 
-if platform.python_implementation() == 'PyPy':
-    # PyPy expects byte strings as Windows function names
-    # https://github.com/rg3/youtube-dl/pull/4392
-    def compat_WINFUNCTYPE(*args, **kwargs):
-        real = ctypes.WINFUNCTYPE(*args, **kwargs)
-
-        def resf(tpl, *args, **kwargs):
-            funcname, dll = tpl
-            return real((str(funcname), dll), *args, **kwargs)
-
-        return resf
-else:
-    def compat_WINFUNCTYPE(*args, **kwargs):
-        return ctypes.WINFUNCTYPE(*args, **kwargs)
-
-
 __all__ = [
     'compat_HTTPError',
     'compat_chr',
@@ -367,7 +349,6 @@ __all__ = [
     'compat_urllib_request',
     'compat_urlparse',
     'compat_urlretrieve',
-    'compat_WINFUNCTYPE',
     'compat_xml_parse_error',
     'shlex_quote',
     'subprocess_check_output',
index bbe554a657b6d3801ac70d2fbbce41125dca5bbd..4b0567c938fa8fe8d78175114ee94db69099af15 100644 (file)
@@ -41,7 +41,6 @@ from .compat import (
     compat_urllib_parse_urlparse,
     compat_urllib_request,
     compat_urlparse,
-    compat_WINFUNCTYPE,
     shlex_quote,
 )
 
@@ -818,21 +817,21 @@ def _windows_write_string(s, out):
     if fileno not in WIN_OUTPUT_IDS:
         return False
 
-    GetStdHandle = compat_WINFUNCTYPE(
+    GetStdHandle = ctypes.WINFUNCTYPE(
         ctypes.wintypes.HANDLE, ctypes.wintypes.DWORD)(
         ("GetStdHandle", ctypes.windll.kernel32))
     h = GetStdHandle(WIN_OUTPUT_IDS[fileno])
 
-    WriteConsoleW = compat_WINFUNCTYPE(
+    WriteConsoleW = ctypes.WINFUNCTYPE(
         ctypes.wintypes.BOOL, ctypes.wintypes.HANDLE, ctypes.wintypes.LPWSTR,
         ctypes.wintypes.DWORD, ctypes.POINTER(ctypes.wintypes.DWORD),
         ctypes.wintypes.LPVOID)(("WriteConsoleW", ctypes.windll.kernel32))
     written = ctypes.wintypes.DWORD(0)
 
-    GetFileType = compat_WINFUNCTYPE(ctypes.wintypes.DWORD, ctypes.wintypes.DWORD)(("GetFileType", ctypes.windll.kernel32))
+    GetFileType = ctypes.WINFUNCTYPE(ctypes.wintypes.DWORD, ctypes.wintypes.DWORD)(("GetFileType", ctypes.windll.kernel32))
     FILE_TYPE_CHAR = 0x0002
     FILE_TYPE_REMOTE = 0x8000
-    GetConsoleMode = compat_WINFUNCTYPE(
+    GetConsoleMode = ctypes.WINFUNCTYPE(
         ctypes.wintypes.BOOL, ctypes.wintypes.HANDLE,
         ctypes.POINTER(ctypes.wintypes.DWORD))(
         ("GetConsoleMode", ctypes.windll.kernel32))