[PATCH] kernel32: Add K32GetWsChangesEx stub
Louis Lenders
xerox.xerox2000x at gmail.com
Mon May 6 15:55:33 CDT 2019
Wine-bug: https://bugs.winehq.org/show_bug.cgi?id=47131
The program is happy with just stub entrypoint in kernel32.spec, but i added stub implementation anyway
Signed-off-by: Louis Lenders <xerox.xerox2000x at gmail.com>
---
.../api-ms-win-core-psapi-l1-1-0.spec | 2 +-
dlls/kernel32/kernel32.spec | 2 +-
dlls/kernel32/virtual.c | 11 +++++++++++
dlls/kernelbase/kernelbase.spec | 2 +-
dlls/psapi/psapi.spec | 1 +
include/psapi.h | 7 +++++++
6 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec b/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec
index c966b3ff0d..c54c107784 100644
--- a/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec
+++ b/dlls/api-ms-win-core-psapi-l1-1-0/api-ms-win-core-psapi-l1-1-0.spec
@@ -9,7 +9,7 @@
@ stdcall K32GetProcessImageFileNameW(long ptr long) kernel32.K32GetProcessImageFileNameW
@ stdcall K32GetProcessMemoryInfo(long ptr long) kernel32.K32GetProcessMemoryInfo
@ stdcall K32GetWsChanges(long ptr long) kernel32.K32GetWsChanges
-@ stub K32GetWsChangesEx
+@ stdcall K32GetWsChangesEx(long ptr ptr) kernel32.K32GetWsChangesEx
@ stdcall K32InitializeProcessForWsWatch(long) kernel32.K32InitializeProcessForWsWatch
@ stdcall K32QueryWorkingSet(long ptr long) kernel32.K32QueryWorkingSet
@ stdcall K32QueryWorkingSetEx(long ptr long) kernel32.K32QueryWorkingSetEx
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index 295a4dbab6..2e2828e58b 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -1018,7 +1018,7 @@
@ stdcall K32GetProcessImageFileNameW(long ptr long)
@ stdcall K32GetProcessMemoryInfo(long ptr long)
@ stdcall K32GetWsChanges(long ptr long)
-# @ stub K32GetWsChangesEx
+@ stdcall K32GetWsChangesEx(long ptr ptr)
@ stdcall K32InitializeProcessForWsWatch(long)
@ stdcall K32QueryWorkingSet(long ptr long)
@ stdcall K32QueryWorkingSetEx(long ptr long)
diff --git a/dlls/kernel32/virtual.c b/dlls/kernel32/virtual.c
index 59c96bd215..a5a2dfdf27 100644
--- a/dlls/kernel32/virtual.c
+++ b/dlls/kernel32/virtual.c
@@ -724,6 +724,17 @@ BOOL WINAPI K32GetWsChanges(HANDLE process, PPSAPI_WS_WATCH_INFORMATION watchinf
return TRUE;
}
+/***********************************************************************
+ * K32GetWsChangesEx (KERNEL32.@)
+ */
+BOOL WINAPI K32GetWsChangesEx(HANDLE process, PSAPI_WS_WATCH_INFORMATION_EX *watchinfoex, DWORD *size)
+{
+ FIXME_(seh)("(%p, %p, %p)\n", process, watchinfoex, size);
+
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
+}
+
/***********************************************************************
* K32InitializeProcessForWsWatch (KERNEL32.@)
*/
diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec
index 22ea65fe1c..9bba9ae545 100644
--- a/dlls/kernelbase/kernelbase.spec
+++ b/dlls/kernelbase/kernelbase.spec
@@ -908,7 +908,7 @@
@ stdcall K32GetProcessImageFileNameW(long ptr long) kernel32.K32GetProcessImageFileNameW
@ stdcall K32GetProcessMemoryInfo(long ptr long) kernel32.K32GetProcessMemoryInfo
@ stdcall K32GetWsChanges(long ptr long) kernel32.K32GetWsChanges
-# @ stub K32GetWsChangesEx
+@ stdcall K32GetWsChangesEx(long ptr ptr) kernel32.K32GetWsChangesEx
@ stdcall K32InitializeProcessForWsWatch(long) kernel32.K32InitializeProcessForWsWatch
@ stdcall K32QueryWorkingSet(long ptr long) kernel32.K32QueryWorkingSet
@ stdcall K32QueryWorkingSetEx(long ptr long) kernel32.K32QueryWorkingSetEx
diff --git a/dlls/psapi/psapi.spec b/dlls/psapi/psapi.spec
index d6116f8c64..6a7bc14815 100644
--- a/dlls/psapi/psapi.spec
+++ b/dlls/psapi/psapi.spec
@@ -21,6 +21,7 @@
@ stdcall GetProcessImageFileNameW(long ptr long) kernel32.K32GetProcessImageFileNameW
@ stdcall GetProcessMemoryInfo(long ptr long) kernel32.K32GetProcessMemoryInfo
@ stdcall GetWsChanges(long ptr long) kernel32.K32GetWsChanges
+@ stdcall GetWsChangesEx(long ptr ptr) kernel32.K32GetWsChangesEx
@ stdcall InitializeProcessForWsWatch(long) kernel32.K32InitializeProcessForWsWatch
@ stdcall QueryWorkingSet(long ptr long) kernel32.K32QueryWorkingSet
@ stdcall QueryWorkingSetEx(long ptr long) kernel32.K32QueryWorkingSetEx
diff --git a/include/psapi.h b/include/psapi.h
index c7663f856d..742bf7b574 100644
--- a/include/psapi.h
+++ b/include/psapi.h
@@ -50,6 +50,12 @@ typedef struct _PSAPI_WS_WATCH_INFORMATION {
LPVOID FaultingVa;
} PSAPI_WS_WATCH_INFORMATION, *PPSAPI_WS_WATCH_INFORMATION;
+typedef struct _PSAPI_WS_WATCH_INFORMATION_EX {
+ PSAPI_WS_WATCH_INFORMATION BasicInfo;
+ ULONG_PTR FaultingThreadId;
+ ULONG_PTR Flags;
+} PSAPI_WS_WATCH_INFORMATION_EX, *PPSAPI_WS_WATCH_INFORMATION_EX;
+
typedef struct _PERFORMANCE_INFORMATION {
DWORD cb;
SIZE_T CommitTotal;
@@ -128,6 +134,7 @@ BOOL WINAPI QueryWorkingSet(HANDLE, PVOID, DWORD);
BOOL WINAPI QueryWorkingSetEx(HANDLE, PVOID, DWORD);
BOOL WINAPI InitializeProcessForWsWatch(HANDLE);
BOOL WINAPI GetWsChanges(HANDLE, PPSAPI_WS_WATCH_INFORMATION, DWORD);
+BOOL WINAPI GetWsChangesEx(HANDLE, PSAPI_WS_WATCH_INFORMATION_EX*, DWORD*);
DWORD WINAPI GetMappedFileNameW(HANDLE, LPVOID, LPWSTR, DWORD);
DWORD WINAPI GetMappedFileNameA(HANDLE, LPVOID, LPSTR, DWORD);
#define GetMappedFileName WINELIB_NAME_AW(GetMappedFileName)
--
2.20.1
More information about the wine-devel
mailing list