[PATCH v3 0/2] js/win-lazyload-buildfix
- From
Carlo Marcelo Arenas Belón <carenas@gmail.com>
- Date
- Sep 26, 2021, 10:05 UTC
- Message-ID
- <20210926100512.58924-1-carenas@gmail.com>
- In-Reply-To
- <20210923065251.21363-1-carenas@gmail.com>
To easy the maintainer reroll of this branch with the fixup[1] squashed and the suggested[2] cleanup in the second patch to minimize change and readiness for next.
Carlo Marcelo Arenas Belón (1): lazyload.h: use an even more generic function pointer than FARPROC
Johannes Sixt (1): lazyload.h: fix warnings about mismatching function pointer types
compat/win32/lazyload.h | 14 +++++++++----- config.mak.dev | 1 - 2 files changed, 9 insertions(+), 6 deletions(-)
[1] https://lore.kernel.org/git/3f963bba-3197-8c52-9828-6d78ef1d25b1@kdbg.org/T/#u [2] https://lore.kernel.org/git/CAPUEspivB=07OponiMrfXFBrC+L7qjSUuZEV9q-Ug5Z_ShnFNA@mail.gmail.com/
Range-diff against v2:
1: 79354f549e ! 1: c389b7ad9d lazyload.h: fix warnings about mismatching function pointer types
@@ Commit message
happy. A cast is fine in these cases because they are generic function
pointer values that have been looked up in a DLL.
+ Helped-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
- Signed-off-by: Junio C Hamano <gitster@pobox.com>
## compat/win32/lazyload.h ##
@@ compat/win32/lazyload.h: struct proc_addr {
@@ compat/win32/lazyload.h: struct proc_addr {
{ #dll, #function, NULL, 0 }; \
- static rettype (WINAPI *function)(__VA_ARGS__)
+ typedef rettype (WINAPI *proc_type_##function)(__VA_ARGS__); \
-+ static proc_type_##function function;
++ static proc_type_##function function
/*
* Loads a function from a DLL (once-only).
2: 912c443bde ! 2: b1efbe2c89 lazyload.h: use an even more generic function pointer than FARPROC
@@ Commit message
enabled, 2021-09-03), as it will be no longer needed.
Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
- Signed-off-by: Junio C Hamano <gitster@pobox.com>
-
- ## compat/mingw.c ##
-@@ compat/mingw.c: enum EXTENDED_NAME_FORMAT {
-
- static char *get_extended_user_info(enum EXTENDED_NAME_FORMAT type)
- {
-- DECLARE_PROC_ADDR(secur32.dll, BOOL, GetUserNameExW,
-- enum EXTENDED_NAME_FORMAT, LPCWSTR, PULONG);
- static wchar_t wbuffer[1024];
- DWORD len;
-+ DECLARE_PROC_ADDR(secur32.dll, BOOL, GetUserNameExW,
-+ enum EXTENDED_NAME_FORMAT, LPCWSTR, PULONG);
-
- if (!INIT_PROC_ADDR(GetUserNameExW))
- return NULL;
## compat/win32/lazyload.h ##
@@
@@ config.mak.dev: DEVELOPER_CFLAGS += -pedantic
endif
endif
DEVELOPER_CFLAGS += -Wdeclaration-after-statement
-
- ## t/helper/test-drop-caches.c ##
-@@ t/helper/test-drop-caches.c: static int cmd_dropcaches(void)
- {
- HANDLE hProcess = GetCurrentProcess();
- HANDLE hToken;
-- DECLARE_PROC_ADDR(ntdll.dll, DWORD, NtSetSystemInformation, INT, PVOID, ULONG);
- SYSTEM_MEMORY_LIST_COMMAND command;
- int status;
-+ DECLARE_PROC_ADDR(ntdll.dll, DWORD, NtSetSystemInformation, INT, PVOID, ULONG);
-
- if (!OpenProcessToken(hProcess, TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES, &hToken))
- return error("Can't open current process token");-- 2.33.0.955.gee03ddbf0e