Add notes, no code change.

svn path=/trunk/; revision=33956
This commit is contained in:
James Tabor 2008-06-13 18:19:28 +00:00
parent 86853e2cea
commit f7a11147ec

View file

@ -1432,7 +1432,8 @@ GDI_MapHandleTable(PSECTION_OBJECT SectionObject, PEPROCESS Process)
(PGDIBRUSHOBJ)->pBrushAttr = IntGdiAllocObjAttr(GDIObjType_BRUSH_TYPE); (PGDIBRUSHOBJ)->pBrushAttr = IntGdiAllocObjAttr(GDIObjType_BRUSH_TYPE);
// Kernel Space to User Space Pointer // Kernel Space to User Space Pointer
(PGDI_TABLE_ENTRY)->UserData = UserHeapAddressToUser(pBrushAttr); (PGDI_TABLE_ENTRY)->UserData = pBrushAttr;
// Gdi will adjust for heap delta.
Example Freeing: Example Freeing:
@ -1441,11 +1442,9 @@ GDI_MapHandleTable(PSECTION_OBJECT SectionObject, PEPROCESS Process)
(PGDIBRUSHOBJ)->pBrushAttr = NULL; (PGDIBRUSHOBJ)->pBrushAttr = NULL;
Notes: Notes:
Testing with DC_ATTR works but has drawing difficulties. This could be due Testing with DC_ATTR works but has drawing difficulties.
to a bug in user share heap allocation and deallocation. The test did not Base on observation, (Over looking the obvious) we need to supply heap delta
include additional deallocations until the DC was freed. So it was always to user space gdi. Now, with testing, looks all normal.
allocated to the DC. Space between allocations was not even and at less
than sizeof(DC_ATTR).
*/ */
PVOID PVOID