[PATCH] kernel32: Add stub for SetProcessWorkingSetSizeEx
André Hentschel
nerv at dawncrow.de
Sun Sep 16 09:59:21 CDT 2018
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45523
Signed-off-by: André Hentschel <nerv at dawncrow.de>
---
.../api-ms-win-core-memory-l1-1-1.spec | 2 +-
.../api-ms-win-core-memory-l1-1-2.spec | 2 +-
dlls/kernel32/kernel32.spec | 2 +-
dlls/kernel32/process.c | 29 +++++++++++++++----
dlls/kernelbase/kernelbase.spec | 2 +-
include/winbase.h | 1 +
6 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/dlls/api-ms-win-core-memory-l1-1-1/api-ms-win-core-memory-l1-1-1.spec b/dlls/api-ms-win-core-memory-l1-1-1/api-ms-win-core-memory-l1-1-1.spec
index 42630c1048..3200be9a78 100644
--- a/dlls/api-ms-win-core-memory-l1-1-1/api-ms-win-core-memory-l1-1-1.spec
+++ b/dlls/api-ms-win-core-memory-l1-1-1/api-ms-win-core-memory-l1-1-1.spec
@@ -15,7 +15,7 @@
@ stdcall QueryMemoryResourceNotification(ptr ptr) kernel32.QueryMemoryResourceNotification
@ stdcall ReadProcessMemory(long ptr ptr long ptr) kernel32.ReadProcessMemory
@ stdcall ResetWriteWatch(ptr long) kernel32.ResetWriteWatch
-@ stub SetProcessWorkingSetSizeEx
+@ stdcall SetProcessWorkingSetSizeEx(long long long long) kernel32.SetProcessWorkingSetSizeEx
@ stdcall SetSystemFileCacheSize(long long long) kernel32.SetSystemFileCacheSize
@ stdcall UnmapViewOfFile(ptr) kernel32.UnmapViewOfFile
@ stub UnmapViewOfFileEx
diff --git a/dlls/api-ms-win-core-memory-l1-1-2/api-ms-win-core-memory-l1-1-2.spec b/dlls/api-ms-win-core-memory-l1-1-2/api-ms-win-core-memory-l1-1-2.spec
index 6100213eb7..57a5b10562 100644
--- a/dlls/api-ms-win-core-memory-l1-1-2/api-ms-win-core-memory-l1-1-2.spec
+++ b/dlls/api-ms-win-core-memory-l1-1-2/api-ms-win-core-memory-l1-1-2.spec
@@ -21,7 +21,7 @@
@ stdcall ReadProcessMemory(long ptr ptr long ptr) kernel32.ReadProcessMemory
@ stub RegisterBadMemoryNotification
@ stdcall ResetWriteWatch(ptr long) kernel32.ResetWriteWatch
-@ stub SetProcessWorkingSetSizeEx
+@ stdcall SetProcessWorkingSetSizeEx(long long long long) kernel32.SetProcessWorkingSetSizeEx
@ stdcall SetSystemFileCacheSize(long long long) kernel32.SetSystemFileCacheSize
@ stdcall UnmapViewOfFile(ptr) kernel32.UnmapViewOfFile
@ stub UnmapViewOfFileEx
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index f1d75b8e1c..9db7d98f41 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -1434,7 +1434,7 @@
@ stdcall SetProcessShutdownParameters(long long)
# @ stub SetProcessUserModeExceptionPolicy
@ stdcall SetProcessWorkingSetSize(long long long)
-# @ stub SetProcessWorkingSetSizeEx
+@ stdcall SetProcessWorkingSetSizeEx(long long long long)
@ stdcall SetSearchPathMode(long)
@ stdcall SetStdHandle(long long)
# @ stub SetStdHandleEx
diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c
index 85e0042024..eacc8e67b8 100644
--- a/dlls/kernel32/process.c
+++ b/dlls/kernel32/process.c
@@ -3390,22 +3390,22 @@ err:
/***********************************************************************
- * SetProcessWorkingSetSize [KERNEL32.@]
+ * SetProcessWorkingSetSizeEx [KERNEL32.@]
* Sets the min/max working set sizes for a specified process.
*
* PARAMS
- * hProcess [I] Handle to the process of interest
+ * process [I] Handle to the process of interest
* minset [I] Specifies minimum working set size
* maxset [I] Specifies maximum working set size
+ * flags [I] Flags to enforce working set sizes
*
* RETURNS
* Success: TRUE
* Failure: FALSE
*/
-BOOL WINAPI SetProcessWorkingSetSize(HANDLE hProcess, SIZE_T minset,
- SIZE_T maxset)
+BOOL WINAPI SetProcessWorkingSetSizeEx(HANDLE process, SIZE_T minset, SIZE_T maxset, DWORD flags)
{
- WARN("(%p,%ld,%ld): stub - harmless\n",hProcess,minset,maxset);
+ WARN("(%p,%ld,%ld,%x): stub - harmless\n", process, minset, maxset, flags);
if(( minset == (SIZE_T)-1) && (maxset == (SIZE_T)-1)) {
/* Trim the working set to zero */
/* Swap the process out of physical RAM */
@@ -3413,6 +3413,25 @@ BOOL WINAPI SetProcessWorkingSetSize(HANDLE hProcess, SIZE_T minset,
return TRUE;
}
+/***********************************************************************
+ * SetProcessWorkingSetSize [KERNEL32.@]
+ * Sets the min/max working set sizes for a specified process.
+ *
+ * PARAMS
+ * process [I] Handle to the process of interest
+ * minset [I] Specifies minimum working set size
+ * maxset [I] Specifies maximum working set size
+ *
+ * RETURNS
+ * Success: TRUE
+ * Failure: FALSE
+ */
+BOOL WINAPI SetProcessWorkingSetSize(HANDLE process, SIZE_T minset, SIZE_T maxset)
+{
+ WARN("(%p,%ld,%ld): stub - harmless\n", process, minset, maxset);
+ return SetProcessWorkingSetSizeEx(process, minset, maxset, 0);
+}
+
/***********************************************************************
* K32EmptyWorkingSet (KERNEL32.@)
*/
diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec
index 89fad2c835..29805760da 100644
--- a/dlls/kernelbase/kernelbase.spec
+++ b/dlls/kernelbase/kernelbase.spec
@@ -1461,7 +1461,7 @@
@ stdcall SetProcessPriorityBoost(long long) kernel32.SetProcessPriorityBoost
@ stdcall SetProcessShutdownParameters(long long) kernel32.SetProcessShutdownParameters
# @ stub SetProcessValidCallTargets
-# @ stub SetProcessWorkingSetSizeEx
+@ stdcall SetProcessWorkingSetSizeEx(long long long long) kernel32.SetProcessWorkingSetSizeEx
# @ stub SetProtectedPolicy
# @ stub SetRoamingLastObservedChangeTime
@ stub SetSecurityAccessMask
diff --git a/include/winbase.h b/include/winbase.h
index 8b26308b95..4d959d0da6 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -2597,6 +2597,7 @@ WINBASEAPI BOOL WINAPI SetProcessAffinityMask(HANDLE,DWORD_PTR);
WINBASEAPI BOOL WINAPI SetProcessPriorityBoost(HANDLE,BOOL);
WINBASEAPI BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD);
WINBASEAPI BOOL WINAPI SetProcessWorkingSetSize(HANDLE,SIZE_T,SIZE_T);
+WINBASEAPI BOOL WINAPI SetProcessWorkingSetSizeEx(HANDLE,SIZE_T,SIZE_T,DWORD);
WINBASEAPI BOOL WINAPI SetSearchPathMode(DWORD);
WINADVAPI BOOL WINAPI SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL);
WINADVAPI BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
--
2.17.1
More information about the wine-devel
mailing list