mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 17:34:57 +00:00
fix a mem leak in win32k bitmap code
svn path=/trunk/; revision=32247
This commit is contained in:
parent
7099cce31f
commit
412242bf24
2 changed files with 16 additions and 21 deletions
|
@ -70,23 +70,22 @@ IntGdiCreateBitmap(
|
|||
return 0;
|
||||
}
|
||||
|
||||
PBITMAPOBJ bmp = BITMAPOBJ_LockBitmap( hBitmap );
|
||||
if (bmp == NULL)
|
||||
{
|
||||
NtGdiDeleteObject(hBitmap);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bmp->flFlags = BITMAPOBJ_IS_APIBITMAP;
|
||||
|
||||
if (NULL != pBits)
|
||||
{
|
||||
PBITMAPOBJ bmp = BITMAPOBJ_LockBitmap( hBitmap );
|
||||
if (bmp == NULL)
|
||||
{
|
||||
NtGdiDeleteObject(hBitmap);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bmp->flFlags = BITMAPOBJ_IS_APIBITMAP;
|
||||
|
||||
IntSetBitmapBits(bmp, bmp->SurfObj.cjBits, pBits);
|
||||
|
||||
|
||||
BITMAPOBJ_UnlockBitmap( bmp );
|
||||
}
|
||||
|
||||
BITMAPOBJ_UnlockBitmap( bmp );
|
||||
|
||||
DPRINT("IntGdiCreateBitmap : %dx%d, %d BPP colors, topdown %d, returning %08x\n",
|
||||
Size.cx, Size.cy, BitsPixel, (Height < 0 ? 1 : 0), hBitmap);
|
||||
|
||||
|
|
|
@ -809,12 +809,9 @@ IntCreateDIBitmap(PDC Dc, const BITMAPINFOHEADER *header,
|
|||
LONG compr;
|
||||
LONG dibsize;
|
||||
BOOL fColor;
|
||||
SIZEL size;
|
||||
|
||||
|
||||
if (DIB_GetBitmapInfo( header, &width, &height, &planes, &bpp, &compr, &dibsize ) == -1) return 0;
|
||||
|
||||
|
||||
// Check if we should create a monochrome or color bitmap. We create a monochrome bitmap only if it has exactly 2
|
||||
// colors, which are black followed by white, nothing else. In all other cases, we create a color bitmap.
|
||||
|
||||
|
@ -866,12 +863,11 @@ IntCreateDIBitmap(PDC Dc, const BITMAPINFOHEADER *header,
|
|||
}
|
||||
else
|
||||
{
|
||||
size.cx = width;
|
||||
size.cy = abs(height);
|
||||
|
||||
handle = IntCreateBitmap(size, DIB_GetDIBWidthBytes(width, 1), BMF_1BPP,
|
||||
(height < 0 ? BMF_TOPDOWN : 0) | BMF_NOZEROINIT,
|
||||
NULL);
|
||||
handle = IntGdiCreateBitmap(width,
|
||||
height,
|
||||
1,
|
||||
1,
|
||||
NULL);
|
||||
}
|
||||
|
||||
if (height < 0)
|
||||
|
|
Loading…
Reference in a new issue