Author: tkreuzer
Date: Mon Feb 4 06:31:09 2008
New Revision: 32111
URL:
http://svn.reactos.org/svn/reactos?rev=32111&view=rev
Log:
- recurse into IntGdiDeleteDC directly, instead of going back to NtGdiDeleteObjectApp and
pass Force parameter on.
- add a FIXME for dangerous code
Modified:
trunk/reactos/subsystems/win32/win32k/objects/dc.c
Modified: trunk/reactos/subsystems/win32/win32k/objects/dc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/dc.c (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/dc.c Mon Feb 4 06:31:09 2008
@@ -961,7 +961,7 @@
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 @@
{
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);