[Win32] Make platform_utils compatible for Python3
On Python 3 several imports are to be imported from
different locations.
Signed-off-by: Remy Böhmer <linux@bohmer.net>
Change-Id: I4f243d145f65e38f74743a742583cfc5c5d76deb
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/249610
Reviewed-by: Mike Frysinger <vapier@google.com>
diff --git a/platform_utils_win32.py b/platform_utils_win32.py
index e20755a..8eb3d2c 100644
--- a/platform_utils_win32.py
+++ b/platform_utils_win32.py
@@ -19,13 +19,18 @@
from pyversion import is_python3
from ctypes import WinDLL, get_last_error, FormatError, WinError, addressof
from ctypes import c_buffer
-from ctypes.wintypes import BOOL, BOOLEAN, LPCWSTR, DWORD, HANDLE, POINTER, c_ubyte
-from ctypes.wintypes import WCHAR, USHORT, LPVOID, Structure, Union, ULONG
-from ctypes.wintypes import byref
+from ctypes.wintypes import BOOL, BOOLEAN, LPCWSTR, DWORD, HANDLE
+from ctypes.wintypes import WCHAR, USHORT, LPVOID, ULONG
+if is_python3():
+ from ctypes import c_ubyte, Structure, Union, byref
+ from ctypes.wintypes import LPDWORD
+else:
+ # For legacy Python2 different imports are needed.
+ from ctypes.wintypes import POINTER, c_ubyte, Structure, Union, byref
+ LPDWORD = POINTER(DWORD)
kernel32 = WinDLL('kernel32', use_last_error=True)
-LPDWORD = POINTER(DWORD)
UCHAR = c_ubyte
# Win32 error codes