mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 19:26:32 +00:00
Don't always return STATUS_BUFFER_TOO_SMALL when an error occurs in ZwQueryValueKey.
The "if" was triggered because ValueInformation->DataLength is 0xcdcdcdcd at the return of the function svn path=/trunk/; revision=18442
This commit is contained in:
@@ -322,15 +322,18 @@ IoGetDeviceProperty(
|
||||
*ResultLength = ValueInformation->DataLength;
|
||||
ZwClose(KeyHandle);
|
||||
|
||||
if (ValueInformation->DataLength > BufferLength)
|
||||
Status = STATUS_BUFFER_TOO_SMALL;
|
||||
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
ExFreePool(ValueInformation);
|
||||
return Status;
|
||||
}
|
||||
|
||||
if (ValueInformation->DataLength > BufferLength)
|
||||
{
|
||||
ExFreePool(ValueInformation);
|
||||
return STATUS_BUFFER_TOO_SMALL;
|
||||
}
|
||||
|
||||
/* FIXME: Verify the value (NULL-terminated, correct format). */
|
||||
|
||||
RtlCopyMemory(PropertyBuffer, ValueInformation->Data,
|
||||
|
||||
Reference in New Issue
Block a user