Module: wine Branch: master Commit: d8fc23d86e730e0ff8a2ab8e02285359a27c4a55 URL: https://gitlab.winehq.org/wine/wine/-/commit/d8fc23d86e730e0ff8a2ab8e0228535...
Author: Paul Gofman pgofman@codeweavers.com Date: Fri Nov 11 17:56:42 2022 -0600
kernelbase: Validate nonzero size for MEM_RELEASE in VirtualFreeEx().
---
dlls/kernelbase/memory.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/dlls/kernelbase/memory.c b/dlls/kernelbase/memory.c index c4a484b5a30..4188eebf181 100644 --- a/dlls/kernelbase/memory.c +++ b/dlls/kernelbase/memory.c @@ -457,6 +457,12 @@ BOOL WINAPI DECLSPEC_HOTPATCH VirtualFree( void *addr, SIZE_T size, DWORD type ) */ BOOL WINAPI DECLSPEC_HOTPATCH VirtualFreeEx( HANDLE process, void *addr, SIZE_T size, DWORD type ) { + if (type == MEM_RELEASE && size) + { + WARN( "Trying to release memory with specified size.\n" ); + SetLastError( ERROR_INVALID_PARAMETER ); + return FALSE; + } return set_ntstatus( NtFreeVirtualMemory( process, &addr, &size, type )); }