- recurse into IntGdiDeleteDC directly, instead of going back to NtGdiDeleteObjectApp and pass Force parameter on.

- add a FIXME for dangerous code

svn path=/trunk/; revision=32111
This commit is contained in:
Timo Kreuzer 2008-02-04 03:31:09 +00:00
parent edff92650c
commit 73bf020856

View file

@ -961,7 +961,7 @@ IntGdiDeleteDC(HDC hDC, BOOL Force)
DC_SetNextDC (DCToDelete, DC_GetNextDC (savedDC));
DCToDelete->saveLevel--;
DC_UnlockDc( savedDC );
NtGdiDeleteObjectApp (savedHDC);
IntGdiDeleteDC(savedHDC, Force);
}
/* Free GDI resources allocated to this DC */
@ -2475,7 +2475,7 @@ DC_AllocateDcAttr(HDC hDC)
{
INT Index = GDI_HANDLE_GET_INDEX((HGDIOBJ)hDC);
PGDI_TABLE_ENTRY Entry = &GdiHandleTable->Entries[Index];
// FIXME: dc could have been deleted!!! use GDIOBJ_InsertUserData
if (NT_SUCCESS(Status))
{
RtlZeroMemory(NewMem, MemSize);