From cf7cb993b8527008cc28a0c8f92f8710c2d258b3 Mon Sep 17 00:00:00 2001 From: Torge Matthies Date: Sun, 1 May 2022 02:48:23 +0200 Subject: [PATCH] ntdll: Use correct output buffer size in RtlpNtEnumerateSubKey. Signed-off-by: Torge Matthies Signed-off-by: Alexandre Julliard --- dlls/ntdll/reg.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/ntdll/reg.c b/dlls/ntdll/reg.c index 294b724a5e5..106ee620cda 100644 --- a/dlls/ntdll/reg.c +++ b/dlls/ntdll/reg.c @@ -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;