mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 16:53:05 +00:00
- Don't try to copy an uninitialized bitmap's contents (it worked only because it was zeroed, and thus zero-size RtlCopy and ExFreePool(NULL)).
svn path=/trunk/; revision=29387
This commit is contained in:
parent
79ce62a7c3
commit
5cf9e02b1e
1 changed files with 8 additions and 4 deletions
|
@ -80,10 +80,14 @@ HvpAddBin(
|
||||||
|
|
||||||
BitmapBuffer = RegistryHive->Allocate(BitmapSize, TRUE);
|
BitmapBuffer = RegistryHive->Allocate(BitmapSize, TRUE);
|
||||||
RtlZeroMemory(BitmapBuffer, BitmapSize);
|
RtlZeroMemory(BitmapBuffer, BitmapSize);
|
||||||
|
if (RegistryHive->DirtyVector.SizeOfBitMap > 0)
|
||||||
|
{
|
||||||
|
ASSERT(RegistryHive->DirtyVector.Buffer);
|
||||||
RtlCopyMemory(BitmapBuffer,
|
RtlCopyMemory(BitmapBuffer,
|
||||||
RegistryHive->DirtyVector.Buffer,
|
RegistryHive->DirtyVector.Buffer,
|
||||||
RegistryHive->DirtyVector.SizeOfBitMap / 8);
|
RegistryHive->DirtyVector.SizeOfBitMap / 8);
|
||||||
RegistryHive->Free(RegistryHive->DirtyVector.Buffer);
|
RegistryHive->Free(RegistryHive->DirtyVector.Buffer);
|
||||||
|
}
|
||||||
RtlInitializeBitMap(&RegistryHive->DirtyVector, BitmapBuffer,
|
RtlInitializeBitMap(&RegistryHive->DirtyVector, BitmapBuffer,
|
||||||
BitmapSize * 8);
|
BitmapSize * 8);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue