[PATCH 0/1] MR8558: kernelbase: Release console_section in case of an allocation failure in alloc_console.
From: Vibhav Pant <vibhavp(a)gmail.com> --- dlls/kernelbase/console.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dlls/kernelbase/console.c b/dlls/kernelbase/console.c index ae9943f1fa0..83bec6c9878 100644 --- a/dlls/kernelbase/console.c +++ b/dlls/kernelbase/console.c @@ -420,7 +420,12 @@ static BOOL alloc_console( BOOL headless ) memset( &console_si, 0, sizeof(console_si) ); console_si.StartupInfo.cb = sizeof(console_si); InitializeProcThreadAttributeList( NULL, 1, 0, &size ); - if (!(console_si.lpAttributeList = HeapAlloc( GetProcessHeap(), 0, size ))) return FALSE; + if (!(console_si.lpAttributeList = HeapAlloc( GetProcessHeap(), 0, size ))) + { + RtlLeaveCriticalSection( &console_section ); + SetLastError( ERROR_NOT_ENOUGH_MEMORY ); + return FALSE; + } InitializeProcThreadAttributeList( console_si.lpAttributeList, 1, 0, &size ); if (!(server = create_console_server()) || !(console = create_console_reference( server ))) goto error; -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/8558
participants (2)
-
Vibhav Pant -
Vibhav Pant (@vibhavp)