Author: cwittich
Date: Mon Dec 10 12:57:30 2007
New Revision: 31121
URL:
http://svn.reactos.org/svn/reactos?rev=31121&view=rev
Log:
fix redzone overwrite when launching solitaire
ntoskrnl\mm\/rpoolmgr.h(707): High-side redzone overwrite detected for paged pool address
0x8d882000
Tag th(68742020), Size 4148, UserSize 4096, LoZone 87878787, HiZone 00000000
Modified:
trunk/reactos/drivers/video/displays/framebuf/palette.c
Modified: trunk/reactos/drivers/video/displays/framebuf/palette.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/displays/fra…
==============================================================================
--- trunk/reactos/drivers/video/displays/framebuf/palette.c (original)
+++ trunk/reactos/drivers/video/displays/framebuf/palette.c Mon Dec 10 12:57:30 2007
@@ -121,6 +121,7 @@
pClut->FirstEntry = iStart;
pClut->NumEntries = cColors;
memcpy(&pClut->LookupTable[0].RgbLong, ppalent, sizeof(ULONG) * cColors);
+ EngFreeMem(ppalent);
if (((PPDEV)dhpdev)->PaletteShift)
{
@@ -176,6 +177,9 @@
{
PPALETTEENTRY PaletteEntries;
+ if (cColors == 0)
+ return FALSE;
+
PaletteEntries = EngAllocMem(0, cColors * sizeof(ULONG), ALLOC_TAG);
if (PaletteEntries == NULL)
{
@@ -185,6 +189,7 @@
if (PALOBJ_cGetColors(ppalo, iStart, cColors, (PULONG)PaletteEntries) !=
cColors)
{
+ EngFreeMem(PaletteEntries);
return FALSE;
}