mirror of
https://github.com/reactos/reactos.git
synced 2025-05-06 10:28:45 +00:00
[ntoskrnl/io]
- Check for null pointers before attempting to copy or free memory. svn path=/trunk/; revision=47049
This commit is contained in:
parent
60eddf5657
commit
02c3f0fa12
1 changed files with 7 additions and 3 deletions
|
@ -884,7 +884,8 @@ IoGetDeviceInterfaces(IN CONST GUID *InterfaceClassGuid,
|
|||
NextReferenceString:
|
||||
ExFreePool(ReferenceBi);
|
||||
ReferenceBi = NULL;
|
||||
ExFreePool(bip);
|
||||
if (bip)
|
||||
ExFreePool(bip);
|
||||
bip = NULL;
|
||||
if (ReferenceKey != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
|
@ -921,8 +922,11 @@ NextReferenceString:
|
|||
Status = STATUS_INSUFFICIENT_RESOURCES;
|
||||
goto cleanup;
|
||||
}
|
||||
RtlCopyMemory(NewBuffer, ReturnBuffer.Buffer, ReturnBuffer.Length);
|
||||
ExFreePool(ReturnBuffer.Buffer);
|
||||
if (ReturnBuffer.Buffer)
|
||||
{
|
||||
RtlCopyMemory(NewBuffer, ReturnBuffer.Buffer, ReturnBuffer.Length);
|
||||
ExFreePool(ReturnBuffer.Buffer);
|
||||
}
|
||||
ReturnBuffer.Buffer = NewBuffer;
|
||||
}
|
||||
ReturnBuffer.Buffer[ReturnBuffer.Length / sizeof(WCHAR)] = UNICODE_NULL;
|
||||
|
|
Loading…
Reference in a new issue