From b4c029b29ef41bd0209b8db9fcf584bead8d258e Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Tue, 14 Apr 2009 16:06:07 +0000 Subject: [PATCH] Return NULL, if failed to lock the provided palette in InrEngCreateXlate. Fixes bug 4378. See issue #4378 for more details. svn path=/trunk/; revision=40502 --- reactos/subsystems/win32/win32k/eng/xlate.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/reactos/subsystems/win32/win32k/eng/xlate.c b/reactos/subsystems/win32/win32k/eng/xlate.c index c05f63df32f..c5914edf606 100644 --- a/reactos/subsystems/win32/win32k/eng/xlate.c +++ b/reactos/subsystems/win32/win32k/eng/xlate.c @@ -177,9 +177,23 @@ IntEngCreateXlate(USHORT DestPalType, USHORT SourcePalType, DestPalGDI = PALETTE_LockPalette(PaletteDest); if (SourcePalType == 0) + { + if (!SourcePalGDI) + { + DPRINT1("Failed to lock source palette %p\n", PaletteSource); + return NULL; + } SourcePalType = SourcePalGDI->Mode; + } if (DestPalType == 0) + { + if (!DestPalGDI) + { + DPRINT1("Failed to lock dest palette %p\n", PaletteDest); + return NULL; + } DestPalType = DestPalGDI->Mode; + } XlateObj->iSrcType = SourcePalType; XlateObj->iDstType = DestPalType;