mirror of
https://github.com/ytdl-org/youtube-dl
synced 2024-12-23 12:40:11 +09:00
Revert "[utils] Work around PyPy stupidity with Windows DLLs (Fixes #4392)"
This reverts commit 16040f46d6
.
This commit is contained in:
parent
62651c556a
commit
e2f89ec7aa
@ -1,10 +1,8 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import ctypes
|
|
||||||
import getpass
|
import getpass
|
||||||
import optparse
|
import optparse
|
||||||
import os
|
import os
|
||||||
import platform
|
|
||||||
import re
|
import re
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
@ -328,22 +326,6 @@ def workaround_optparse_bug9161():
|
|||||||
optparse.OptionGroup.add_option = _compat_add_option
|
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__ = [
|
__all__ = [
|
||||||
'compat_HTTPError',
|
'compat_HTTPError',
|
||||||
'compat_chr',
|
'compat_chr',
|
||||||
@ -367,7 +349,6 @@ __all__ = [
|
|||||||
'compat_urllib_request',
|
'compat_urllib_request',
|
||||||
'compat_urlparse',
|
'compat_urlparse',
|
||||||
'compat_urlretrieve',
|
'compat_urlretrieve',
|
||||||
'compat_WINFUNCTYPE',
|
|
||||||
'compat_xml_parse_error',
|
'compat_xml_parse_error',
|
||||||
'shlex_quote',
|
'shlex_quote',
|
||||||
'subprocess_check_output',
|
'subprocess_check_output',
|
||||||
|
@ -41,7 +41,6 @@ from .compat import (
|
|||||||
compat_urllib_parse_urlparse,
|
compat_urllib_parse_urlparse,
|
||||||
compat_urllib_request,
|
compat_urllib_request,
|
||||||
compat_urlparse,
|
compat_urlparse,
|
||||||
compat_WINFUNCTYPE,
|
|
||||||
shlex_quote,
|
shlex_quote,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -818,21 +817,21 @@ def _windows_write_string(s, out):
|
|||||||
if fileno not in WIN_OUTPUT_IDS:
|
if fileno not in WIN_OUTPUT_IDS:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
GetStdHandle = compat_WINFUNCTYPE(
|
GetStdHandle = ctypes.WINFUNCTYPE(
|
||||||
ctypes.wintypes.HANDLE, ctypes.wintypes.DWORD)(
|
ctypes.wintypes.HANDLE, ctypes.wintypes.DWORD)(
|
||||||
("GetStdHandle", ctypes.windll.kernel32))
|
("GetStdHandle", ctypes.windll.kernel32))
|
||||||
h = GetStdHandle(WIN_OUTPUT_IDS[fileno])
|
h = GetStdHandle(WIN_OUTPUT_IDS[fileno])
|
||||||
|
|
||||||
WriteConsoleW = compat_WINFUNCTYPE(
|
WriteConsoleW = ctypes.WINFUNCTYPE(
|
||||||
ctypes.wintypes.BOOL, ctypes.wintypes.HANDLE, ctypes.wintypes.LPWSTR,
|
ctypes.wintypes.BOOL, ctypes.wintypes.HANDLE, ctypes.wintypes.LPWSTR,
|
||||||
ctypes.wintypes.DWORD, ctypes.POINTER(ctypes.wintypes.DWORD),
|
ctypes.wintypes.DWORD, ctypes.POINTER(ctypes.wintypes.DWORD),
|
||||||
ctypes.wintypes.LPVOID)(("WriteConsoleW", ctypes.windll.kernel32))
|
ctypes.wintypes.LPVOID)(("WriteConsoleW", ctypes.windll.kernel32))
|
||||||
written = ctypes.wintypes.DWORD(0)
|
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_CHAR = 0x0002
|
||||||
FILE_TYPE_REMOTE = 0x8000
|
FILE_TYPE_REMOTE = 0x8000
|
||||||
GetConsoleMode = compat_WINFUNCTYPE(
|
GetConsoleMode = ctypes.WINFUNCTYPE(
|
||||||
ctypes.wintypes.BOOL, ctypes.wintypes.HANDLE,
|
ctypes.wintypes.BOOL, ctypes.wintypes.HANDLE,
|
||||||
ctypes.POINTER(ctypes.wintypes.DWORD))(
|
ctypes.POINTER(ctypes.wintypes.DWORD))(
|
||||||
("GetConsoleMode", ctypes.windll.kernel32))
|
("GetConsoleMode", ctypes.windll.kernel32))
|
||||||
|
Loading…
Reference in New Issue
Block a user