ntdll: Use correct output buffer size in RtlpNtEnumerateSubKey.

Signed-off-by: Torge Matthies <tmatthies@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Torge Matthies 2022-05-01 02:48:23 +02:00 committed by Alexandre Julliard
parent fd5c680abe
commit cf7cb993b8
1 changed files with 3 additions and 3 deletions

View File

@ -91,9 +91,9 @@ NTSTATUS WINAPI RtlpNtEnumerateSubKey( HANDLE handle, UNICODE_STRING *out, ULONG
DWORD dwLen, dwResultLen;
NTSTATUS ret;
if (out->Length)
if (out->MaximumLength)
{
dwLen = out->Length + sizeof(KEY_BASIC_INFORMATION);
dwLen = out->MaximumLength + sizeof(KEY_BASIC_INFORMATION);
info = RtlAllocateHeap( GetProcessHeap(), 0, dwLen );
if (!info)
return STATUS_NO_MEMORY;
@ -111,7 +111,7 @@ NTSTATUS WINAPI RtlpNtEnumerateSubKey( HANDLE handle, UNICODE_STRING *out, ULONG
out->Length = dwResultLen;
else if (!ret)
{
if (out->Length < info->NameLength)
if (out->MaximumLength < info->NameLength)
{
out->Length = dwResultLen;
ret = STATUS_BUFFER_OVERFLOW;