Cleanup pooltags a little, use official tags where known and applicable.
svn path=/trunk/; revision=50345
{
RECTL *dest;
- Clip = EngAllocMem(0, sizeof(CLIPGDI) + ((count - 1) * sizeof(RECTL)), TAG_CLIPOBJ);
+ Clip = EngAllocMem(0, sizeof(CLIPGDI) + ((count - 1) * sizeof(RECTL)), GDITAG_CLIPOBJ);
if(Clip != NULL)
{
}
else
{
- Clip = EngAllocMem(0, sizeof(CLIPGDI), TAG_CLIPOBJ);
+ Clip = EngAllocMem(0, sizeof(CLIPGDI), GDITAG_CLIPOBJ);
if(Clip != NULL)
{
CLIPOBJ * APIENTRY
EngCreateClip(VOID)
{
- CLIPGDI *Clip = EngAllocMem(FL_ZERO_MEMORY, sizeof(CLIPGDI), TAG_CLIPOBJ);
+ CLIPGDI *Clip = EngAllocMem(FL_ZERO_MEMORY, sizeof(CLIPGDI), GDITAG_CLIPOBJ);
if(Clip != NULL)
{
return GDIToObj(Clip, CLIP);
*Count = Boundary->bottom - Boundary->top;
if (*Count > 0)
{
- *Spans = ExAllocatePoolWithTag(PagedPool, *Count * sizeof(SPAN), TAG_CLIP);
+ *Spans = ExAllocatePoolWithTag(PagedPool, *Count * sizeof(SPAN), GDITAG_CLIPOBJ);
if (NULL == *Spans)
{
*Count = 0;
}
if (NewCount != *Count)
{
- NewSpans = ExAllocatePoolWithTag(PagedPool, NewCount * sizeof(SPAN), TAG_CLIP);
+ NewSpans = ExAllocatePoolWithTag(PagedPool, NewCount * sizeof(SPAN), GDITAG_CLIPOBJ);
if (NULL == NewSpans)
{
if (NULL != *Spans)
{
- ExFreePoolWithTag(*Spans, TAG_CLIP);
+ ExFreePoolWithTag(*Spans, GDITAG_CLIPOBJ);
*Spans = NULL;
}
*Count = 0;
{
*dest++ = *src++;
}
- ExFreePoolWithTag(*Spans, TAG_CLIP);
+ ExFreePoolWithTag(*Spans, GDITAG_CLIPOBJ);
}
*Spans = NewSpans;
}
#define NDEBUG
#include <debug.h>
-/* Dfsm - <unknown> - Eng event allocation (ENG_KEVENTALLOC,ENG_ALLOC) in ntgdi\gre */
-#define TAG_GRE_EVENT 'msfD'
-
/* PUBLIC FUNCTIONS ***********************************************************/
BOOL
/* Allocate memory for the event structure */
EngEvent = ExAllocatePoolWithTag(NonPagedPool,
sizeof(ENG_EVENT) + sizeof(KEVENT),
- TAG_GRE_EVENT);
+ GDITAG_ENG_EVENT);
if (EngEvent)
{
/* Set KEVENT pointer */
else
{
/* Out of memory */
- DPRINT("EngCreateEvent() failed\n");
+ DPRINT("EngCreateEvent() failed\n");
Result = FALSE;
}
/* Allocate memory for the event structure */
EngEvent = ExAllocatePoolWithTag(NonPagedPool,
sizeof(ENG_EVENT),
- TAG_GRE_EVENT);
+ GDITAG_ENG_EVENT);
if (!EngEvent) return NULL;
-
+
/* Zero it out */
EngEvent->fFlags = 0;
EngEvent->pKEvent = NULL;
-
+
/* Create a handle, and have Ob fill out the pKEvent field */
Status = ObReferenceObjectByHandle(EngEvent,
EVENT_ALL_ACCESS,
ExFreePool(EngEvent);
EngEvent = NULL;
}
-
+
/* Support legacy interface */
if (Reserved1) *(PVOID*)Reserved1 = EngEvent;
return EngEvent;
{
/* Must be a usermapped event */
if (!(Event->fFlags & ENG_EVENT_USERMAPPED)) return FALSE;
-
+
/* Dereference the object, destroying it */
ObDereferenceObject(Event->pKEvent);
-
+
/* Free the Eng object */
ExFreePool(Event);
return TRUE;
}
/* Create WNDOBJ */
- WndObjInt = EngAllocMem(0, sizeof (WNDGDI), TAG_WNDOBJ);
+ WndObjInt = EngAllocMem(0, sizeof (WNDGDI), GDITAG_WNDOBJ);
if (WndObjInt == NULL)
{
DPRINT1("Failed to allocate memory for a WND structure!\n");
EngCreateSemaphore ( VOID )
{
// www.osr.com/ddk/graphics/gdifncs_95lz.htm
- PERESOURCE psem = ExAllocatePoolWithTag( NonPagedPool, sizeof(ERESOURCE), TAG_GSEM );
+ PERESOURCE psem = ExAllocatePoolWithTag( NonPagedPool, sizeof(ERESOURCE), GDITAG_SEMAPHORE );
if ( !psem )
return NULL;
if ( !NT_SUCCESS(ExInitializeResourceLite ( psem )) )
{
- ExFreePoolWithTag ( psem, TAG_GSEM );
+ ExFreePoolWithTag ( psem, GDITAG_SEMAPHORE );
return NULL;
}
return (HSEMAPHORE)psem;
ExDeleteResourceLite((PERESOURCE)hsem);
- ExFreePoolWithTag( (PVOID)hsem, TAG_GSEM);
+ ExFreePoolWithTag( (PVOID)hsem, GDITAG_SEMAPHORE);
}
/*
{
pexlo->xlo.pulXlate = EngAllocMem(0,
cEntries * sizeof(ULONG),
- TAG_XLATEOBJ);
+ GDITAG_PXLATE);
if (!pexlo->xlo.pulXlate)
{
DPRINT1("Could not allocate pulXlate buffer.\n");
ObDereferenceObject((MsgQueue)->NewMessages); \
if ((MsgQueue)->NewMessagesHandle != NULL) \
ZwClose((MsgQueue)->NewMessagesHandle); \
- ExFreePool((MsgQueue)); \
+ ExFreePoolWithTag((MsgQueue), USERTAG_Q); \
} \
} while(0)
#pragma once
#define TAG_STRING ' RTS' /* string */
-#define TAG_RTLREGISTRY 'vrqR' /* RTL registry */
-
-/* ntuser */
-#define TAG_MOUSE 'SUOM' /* mouse */
-#define TAG_KEYBOARD ' DBK' /* keyboard */
-#define TAG_ACCEL 'LCCA' /* accelerator */
-#define TAG_HOOK 'KHNW' /* hook */
-#define TAG_HOTKEY 'KTOH' /* hotkey */
-#define TAG_MENUITEM 'INEM' /* menu item */
+#define TAG_HOOK 'ohsU' /* hook */
+#define TAG_MENUITEM 'emsU' /* menu item */
#define TAG_MSG 'GSEM' /* message */
-#define TAG_MSGQ 'QGSM' /* message queue */
#define TAG_USRMSG 'GSMU' /* user message */
-#define TAG_WNDPROP 'PRPW' /* window property */
-#define TAG_WNAM 'MANW' /* window name */
-#define TAG_WINLIST 'SLNW' /* window handle list */
-#define TAG_WININTLIST 'PINW' /* window internal pos */
-#define TAG_WINPROCLST 'LPNW' /* window proc list */
#define TAG_SBARINFO 'NIBS' /* scrollbar info */
-#define TAG_TIMER 'RMIT' /* timer entry */
-#define TAG_TIMERTD 'TMIT' /* timer thread dereference list */
#define TAG_TIMERBMP 'BMIT' /* timers bitmap */
-#define TAG_CALLBACK 'KCBC' /* callback memory */
#define TAG_WINSTA 'ATSW' /* window station */
-#define TAG_PDCE 'cdsU' /* dce */
-#define TAG_ATTACHINFO 'iasU' /* Attach Info Input */
-#define TAG_INPUT 'yssU' /* Input */
+#define TAG_FONT 'ETNF' /* font entry */
+#define TAG_BEZIER 'RZEB' /* bezier */
+#define TAG_SHAPE 'phSG' /* shape */
+#define TAG_COLORMAP 'MLOC' /* color map */
+#define TAG_GDIHNDTBLE 'bthG' /* gdi handle table */
+#define TAG_DIB ' BID' /* dib */
/* gdi objects from the handle table */
-#define TAG_DC '1alG' /* dc */
-#define TAG_REGION '4alG' /* region */
-#define TAG_SURFACE '5alG' /* bitmap */
+#define TAG_DC GDITAG_HMGR_LOOKASIDE_DC_TYPE
+#define TAG_REGION GDITAG_HMGR_LOOKASIDE_RGN_TYPE
+#define TAG_SURFACE GDITAG_HMGR_LOOKASIDE_SURF_TYPE
#define TAG_CLIENTOBJ '60hG'
#define TAG_PATH '70hG'
-#define TAG_PALETTE '8alG'
+#define TAG_PALETTE GDITAG_HMGR_LOOKASIDE_PAL_TYPE
#define TAG_ICMLCS '90hG'
-#define TAG_LFONT ':alG'
+#define TAG_LFONT GDITAG_HMGR_LOOKASIDE_LFONT_TYPE
#define TAG_RFONT ';0gG' /* correct? */
#define TAG_PFE '<0hG'
#define TAG_PFT '=0hG' /* correct? */
#define TAG_ICMCXF '>0hG' /* correct? */
#define TAG_SPRITE '?0hG' /* correct? */
-#define TAG_BRUSH '@alG'
+#define TAG_BRUSH GDITAG_HMGR_LOOKASIDE_BRUSH_TYPE
#define TAG_UMPD 'A0hG' /* correct? */
#define TAG_SPACE 'c0hG' /* correct? */
#define TAG_META 'E0hG' /* correct? */
#define TAG_DCIOBJ 'M0hG' /* correct? */
#define TAG_SPOOL 'N0hG' /* correct? */
-/* other gdi objects */
-#define TAG_BEZIER 'RZEB' /* bezier */
-#define TAG_BITMAP 'PMTB' /* bitmap */
-#define TAG_PATBLT 'TLBP' /* patblt */
-#define TAG_CLIP 'PILC' /* clipping */
-#define TAG_COORD 'DROC' /* coords */
-#define TAG_GDIDEV 'vedG' /* gdi dev support*/
-#define TAG_GDIPDEV 'veDG' /* gdi PDev */
-#define TAG_GDIHNDTBLE 'HIDG' /* gdi handle table */
-#define TAG_GDIICM 'mciG' /* gdi Icm */
-#define TAG_DIB ' BID' /* dib */
-#define TAG_COLORMAP 'MLOC' /* color map */
-#define TAG_SHAPE 'PAHS' /* shape */
-#define TAG_PALETTEMAP 'MLAP' /* palette mapping */
-#define TAG_PRINT 'TNRP' /* print */
-#define TAG_GDITEXT 'OTXT' /* text */
-#define TAG_PENSTYLES 'ytsG' /* pen styles */
-
-/* Eng objects */
-#define TAG_CLIPOBJ 'OPLC' /* clip object */
-#define TAG_DRIVEROBJ 'OVRD' /* driver object */
-#define TAG_DFSM 'msfD' /* Eng event allocation */
-#define TAG_EPATH 'tapG' /* path object */
-#define TAG_FONT 'ETNF' /* font entry */
-#define TAG_FONTOBJ 'tnfG' /* font object */
-#define TAG_WNDOBJ 'ODNW' /* window object */
-#define TAG_XLATEOBJ 'OALX' /* xlate object */
-#define TAG_GSEM 'mesG' /* Gdi Semaphore */
-
-/* misc */
-#define TAG_DRIVER 'VRDG' /* video drivers */
-#define TAG_FNTFILE 'FTNF' /* font file */
-#define TAG_SSECTPOOL 'PCSS' /* shared section pool */
-#define TAG_PFF 'ffpG' /* physical font file */
-
/* Dx internal tags rember I do not known if it right namees */
#define TAG_DXPVMLIST 'LPXD' /* pmvlist for the driver */
#define TAG_DXFOURCC 'OFXD' /* pdwFourCC for the driver */
-#define TAG_DDRAW '1 hD'
+#define TAG_DDRAW '1 hD'
#define TAG_DDSURF '2 hD'
#define TAG_EDDGBL 'GDDE' /* ? edd_directdraw_global ??*/
/* Official tags */
-#define GDITAG_ATM_FONT 'Adbe'
-#define GDITAG_BMP_FONT 'dfmB'
-#define GDITAG_ENG_EVENT 'msfD'
-#define GDITAG_DWM_HWND_LOOKUP 'LmwD'
-#define GDITAG_DWM_VALIDATION 'vMWD'
-#define GDITAG_LOCKED_PRIMARY 'ddxD'
-#define GDITAG_DC_COLOR_TRANSFORM 'bdaG'
-#define GDITAG_DC_FONT 'ddaG'
-#define GDITAG_ALPHABLEND 'plaG'
-#define GDITAG_BRUSH_FREELIST 'fabG'
-#define GDITAG_ICM_DIB_LIST 'ldbG'
-#define GDITAG_FONTCACHE 'cacG'
-#define GDITAG_SCRIPTS 'lscG'
-#define GDITAG_CHAR_TO_WIDE_CHAR 'cwcG'
-#define GDITAG_RBRUSH 'rbdG'
-#define GDITAG_DC_FREELIST 'fcdG'
-#define GDITAG_DWMSTATE 'scDG'
-#define GDITAG_DEVMODE 'vedG'
-#define GDITAG_PDEV 'veDG'
-#define GDITAG_HGLYPH_ARRAY 'mfdG'
-#define GDITAG_DRVSUP 'srdG'
-#define GDITAG_CLIPOBJ 'vrdG'
-#define GDITAG_SEMAPHORE_VALIDATE 'dtdG'
-#define GDITAG_WATCHDOG 'dwdG'
-#define GDITAG_ENGBRUSH 'rbeG'
-#define GDITAG_ENUM_DISPLAY_DEVICES 'ddeG'
-#define GDITAG_EDGE 'gdeG'
-#define GDITAG_TRIANGLEDATA 'gdEg'
-#define GDITAG_TEXTOUT 'oteG'
-#define GDITAG_FONT_DEFAULT_FAMILY 'fdfG'
-#define GDITAG_FONTFILEVIEW 'vffG'
-#define GDITAG_UNIVERSAL_FONT_ID 'difG'
-#define GDITAG_FILEPATH 'liFG'
-#define GDITAG_MAPFILE 'lifG'
-#define GDITAG_FLOODFILL 'dlFG'
-#define GDITAG_RFONT 'tnfG'
-#define GDITAG_FONT_SUB 'bsfG'
-#define GDITAG_FONT_STOCKFONT 'fsfG'
-#define GDITAG_FAST_MUTEX 'msfG'
-#define GDITAG_FULLSCREEN 'lufG'
-#define GDITAG_FONTVICTIM 'ivfG'
-#define GDITAG_GLYPHBLOCK ' bgG'
-#define GDITAG_GDEVICE 'vdgG'
-#define GDITAG_GLYPHSET 'slgG'
-#define GDITAG_HGLYPH 'ylgG'
-#define GDITAG_HMGR_LFONT_TYPE ':?hG'
-#define GDITAG_HMGR_RFONT_TYPE ';?hG'
-#define GDITAG_HMGR_BRUSH_TYPE '@?hG'
-#define GDITAG_HMGR_ICMCXF_TYPE '>?hG'
-#define GDITAG_HMGR_DEF_TYPE '0?hG'
-#define GDITAG_HMGR_DC_TYPE '1?hG'
-#define GDITAG_HMGR_RGN_TYPE '4?hG'
-#define GDITAG_HMGR_SURF_TYPE '5?hG'
-#define GDITAG_HMGR_CLIENTOBJ_TYPE '6?hG'
-#define GDITAG_HMGR_PATH_TYPE '7?hG'
-#define GDITAG_HMGR_PAL_TYPE '8?hG'
-#define GDITAG_HMGR_ICMLCS_TYPE '9?hG'
-#define GDITAG_HMGR_UMPD_TYPE 'A?hG'
-#define GDITAG_HMGR_HLSURF_TYPE 'B?hG'
-#define GDITAG_HMGR_META_TYPE 'E?hG'
-#define GDITAG_HMGR_DRVOBJ_TYPE 'L?hG'
-#define GDITAG_HMGR_SPRITE_TYPE '??hG'
-#define GDITAG_HMGR_START '00hG'
-#define GDITAG_PFE_HASHBUCKET 'bahG'
-#define GDITAG_PFE_HASHTABLE 'sahG'
-#define GDITAG_HMGR_LOCK 'lmhG'
-#define GDITAG_HALFTONE_COLORTRIAD 'cthG'
-#define GDITAG_HMGR_TEMP 'mthG'
-#define GDITAG_DDCCI 'c2iG'
-#define GDITAG_ICM 'mciG'
-#define GDITAG_KMODE_BITMAP 'mbkG'
+#define GDITAG_ATM_FONT 'ebdA'
+#define GDITAG_BMP_FONT 'dfmB'
+#define GDITAG_ENG_EVENT 'msfD'
+#define GDITAG_DWM_HWND_LOOKUP 'LmwD'
+#define GDITAG_DWM_VALIDATION 'vMWD'
+#define GDITAG_LOCKED_PRIMARY 'ddxD'
+#define GDITAG_DC_COLOR_TRANSFORM 'bdaG'
+#define GDITAG_DC_FONT 'ddaG'
+#define GDITAG_ALPHABLEND 'plaG'
+#define GDITAG_BRUSH_FREELIST 'fabG'
+#define GDITAG_ICM_DIB_LIST 'ldbG'
+#define GDITAG_FONTCACHE 'cacG'
+#define GDITAG_SCRIPTS 'lscG'
+#define GDITAG_CHAR_TO_WIDE_CHAR 'cwcG'
+#define GDITAG_RBRUSH 'rbdG'
+#define GDITAG_DC_FREELIST 'fcdG'
+#define GDITAG_DWMSTATE 'scDG'
+#define GDITAG_DEVMODE 'vedG'
+#define GDITAG_PDEV 'veDG'
+#define GDITAG_HGLYPH_ARRAY 'mfdG'
+#define GDITAG_DRVSUP 'srdG'
+#define GDITAG_CLIPOBJ 'vrdG'
+#define GDITAG_SEMAPHORE_VALIDATE 'dtdG'
+#define GDITAG_WATCHDOG 'dwdG'
+#define GDITAG_ENGBRUSH 'rbeG'
+#define GDITAG_ENUM_DISPLAY_DEVICES 'ddeG'
+#define GDITAG_EDGE 'gdeG'
+#define GDITAG_TRIANGLEDATA 'gdEg'
+#define GDITAG_TEXTOUT 'oteG'
+#define GDITAG_FONT_DEFAULT_FAMILY 'fdfG'
+#define GDITAG_FONTFILEVIEW 'vffG'
+#define GDITAG_UNIVERSAL_FONT_ID 'difG'
+#define GDITAG_FILEPATH 'liFG'
+#define GDITAG_MAPFILE 'lifG'
+#define GDITAG_FLOODFILL 'dlFG'
+#define GDITAG_RFONT 'tnfG'
+#define GDITAG_FONT_SUB 'bsfG'
+#define GDITAG_FONT_STOCKFONT 'fsfG'
+#define GDITAG_FAST_MUTEX 'msfG'
+#define GDITAG_FULLSCREEN 'lufG'
+#define GDITAG_FONTVICTIM 'ivfG'
+#define GDITAG_GLYPHBLOCK ' bgG'
+#define GDITAG_GDEVICE 'vdgG'
+#define GDITAG_GLYPHSET 'slgG'
+#define GDITAG_HGLYPH 'ylgG'
+#define GDITAG_HMGR_LFONT_TYPE ':?hG'
+#define GDITAG_HMGR_RFONT_TYPE ';?hG'
+#define GDITAG_HMGR_BRUSH_TYPE '@?hG'
+#define GDITAG_HMGR_ICMCXF_TYPE '>?hG'
+#define GDITAG_HMGR_DEF_TYPE '0?hG'
+#define GDITAG_HMGR_DC_TYPE '1?hG'
+#define GDITAG_HMGR_RGN_TYPE '4?hG'
+#define GDITAG_HMGR_SURF_TYPE '5?hG'
+#define GDITAG_HMGR_CLIENTOBJ_TYPE '6?hG'
+#define GDITAG_HMGR_PATH_TYPE '7?hG'
+#define GDITAG_HMGR_PAL_TYPE '8?hG'
+#define GDITAG_HMGR_ICMLCS_TYPE '9?hG'
+#define GDITAG_HMGR_UMPD_TYPE 'A?hG'
+#define GDITAG_HMGR_HLSURF_TYPE 'B?hG'
+#define GDITAG_HMGR_META_TYPE 'E?hG'
+#define GDITAG_HMGR_DRVOBJ_TYPE 'L?hG'
+#define GDITAG_HMGR_SPRITE_TYPE '??hG'
+#define GDITAG_HMGR_START '00hG'
+#define GDITAG_PFE_HASHBUCKET 'bahG'
+#define GDITAG_PFE_HASHTABLE 'sahG'
+#define GDITAG_HMGR_LOCK 'lmhG'
+#define GDITAG_HALFTONE_COLORTRIAD 'cthG'
+#define GDITAG_HMGR_TEMP 'mthG'
+#define GDITAG_DDCCI 'c2iG'
+#define GDITAG_ICM 'mciG'
+#define GDITAG_KMODE_BITMAP 'mbkG'
#define GDITAG_HMGR_LOOKASIDE_LFONT_TYPE ':alG'
#define GDITAG_HMGR_LOOKASIDE_RFONT_TYPE ';alG'
#define GDITAG_HMGR_LOOKASIDE_BRUSH_TYPE '@alG'
-#define GDITAG_HMGR_LOOKASIDE_START '0alG'
-#define GDITAG_HMGR_LOOKASIDE_DC_TYPE '1alG'
-#define GDITAG_HMGR_LOOKASIDE_RGN_TYPE '4alG'
-#define GDITAG_HMGR_LOOKASIDE_SURF_TYPE '5alG'
-#define GDITAG_HMGR_LOOKASIDE_PAL_TYPE '8alG'
-#define GDITAG_LDEV 'vdlG'
-#define GDITAG_LOCALEINFO 'dilG'
-#define GDITAG_PFE_LINK 'knlG'
-#define GDITAG_FONT_MAPPER 'pamG'
-#define GDITAG_DISPURF_SORT 'osmG'
-#define GDITAG_MULTIFONT 'lumG'
-#define GDITAG_NLS 'slnG'
-#define GDITAG_OPENGL 'lgoG'
-#define GDITAG_OPM 'MPOG'
-#define GDITAG_PALETTE 'laPG'
-#define GDITAG_PANNING_PDEV 'napG'
-#define GDITAG_PATHOBJ 'tapG'
-#define GDITAG_PFF_INDEXES 'efpG'
-#define GDITAG_PFF 'ffpG'
-#define GDITAG_PFT 'tfpG'
-#define GDITAG_PLGBLT_DATA 'bgpG'
-#define GDITAG_PRINTCLIENTID 'dipG'
-#define GDITAG_CLIP_PATHOBJ 'oppG'
-#define GDITAG_PROXYPORT 'tppG'
-#define GDITAG_PRESENT 'erpG'
-#define GDITAG_LFONT_QUICKLOOKUP 'knqG'
-#define GDITAG_PALETTE_RGB_XLATE 'bgrG'
-#define GDITAG_REGION 'ngrG'
-#define GDITAG_SEMAPHORE 'mesG'
-#define GDITAG_SPRITE ' psG'
-#define GDITAG_METASPRITE 'mpsG'
-#define GDITAG_SPRITESCAN 'rpsG'
-#define GDITAG_STACKTRACE 'atsG'
-#define GDITAG_STRETCHBLT 'htsG'
-#define GDITAG_PENSTYLE 'ytsG'
-#define GDITAG_SFM 'xusG'
-#define GDITAG_TEMP 'pmtG'
-#define GDITAG_TEMP_THREADLOCK 'pmTG'
-#define GDITAG_TEXTMETRICS 'wmtG'
-#define GDITAG_PFF_DATA 'pvtG'
-#define GDITAG_TRIANGLE_MESH 'tvtG'
-#define GDITAG_TEXT 'txtG'
-#define GDITAG_UMODE_BITMAP 'mbuG'
-#define GDITAG_ENG_USER_MEM_ALLOC_TABLE 'amUG'
-#define GDITAG_UMPD 'pmuG'
-#define GDITAG_HDEV 'sdvG'
-#define GDITAG_VDEV 'vdVG'
-#define GDITAG_MULTISAVEBITS 'smVG'
-#define GDITAG_MDSURF 'fsVG'
-#define GDITAG_WNDOBJ 'dnwG'
-#define GDITAG_PXLATE 'tlxG'
-#define GDITAG_UMPDOBJ 'dpxG'
-#define GDITAG_FONT_LINK 'flnk'
-#define GDITAG_PANNING_SURFACE 'fSAP'
-#define GDITAG_PANNING_SHADOWLOCK 'olSP'
-#define GDITAG_SINGLEREADERLOCK 'lrsS'
-#define GDITAG_TT_FONT_CACHE 'CFTT'
-#define GDITAG_TT_FONT 'dftT'
-#define GDITAG_VF_FONT 'dftV'
-#define GDITAG_W32PIDLOCK 'l23W'
-#define GDITAG_HANDLEPUSHLOCK 'lpHG'
-#define USERTAG_SERVICE_TABLE 'lacU'
-#define USERTAG_MONITOR_MARGIN 'mamU'
-#define USERTAG_REDIRECT 'rdrU'
-#define USERTAG_ACCEL 'casU'
-#define USERTAG_ATTACHINFO 'iasU'
-#define USERTAG_ALTTAB 'lasU'
-#define USERTAG_DEBUG 'gbsU'
-#define USERTAG_CLIPBOARD 'bcsU'
-#define USERTAG_CALLBACK 'ccsU'
-#define USERTAG_COMPOSITIONPROP 'dcsU'
-#define USERTAG_CLIENTTHREADINFO 'icsU'
-#define USERTAG_CLASS 'lcsU'
-#define USERTAG_SCANCODEMAP 'mcsU'
-#define USERTAG_CLIPBOARDPALETTE 'pcsU'
-#define USERTAG_COLORS 'rcsU'
-#define USERTAG_CHECKPT 'tcsU'
-#define USERTAG_CURSOR 'ucsU'
-#define USERTAG_COLORVALUES 'vcsU'
-#define USERTAG_DDE1 '1dsU'
-#define USERTAG_DDE2 '2dsU'
-#define USERTAG_DDE4 '4dsU'
-#define USERTAG_DDE5 '5dsU'
-#define USERTAG_DDE6 '6dsU'
-#define USERTAG_DDE7 '7dsU'
-#define USERTAG_DDE8 '8dsU'
-#define USERTAG_DDE9 '9dsU'
-#define USERTAG_DDEa 'AdsU'
-#define USERTAG_DDEb 'BdsU'
-#define USERTAG_DCE 'cdsU'
-#define USERTAG_DDEd 'DdsU'
-#define USERTAG_DDE 'EdsU'
-#define USERTAG_DEVICEINFO 'IDsU'
-#define USERTAG_DISPLAYINFO 'idsU'
-#define USERTAG_DRAGDROP 'sdsU'
-#define USERTAG_DEVICECHANGE 'vdsU'
-#define USERTAG_WSEXCOMPINVALID 'CEsU'
-#define USERTAG_ERESOURCE 'resU'
-#define USERTAG_EVENT 'vesU'
-#define USERTAG_FORWARDTOUCHMESSAGE 'tfsU'
-#define USERTAG_GRANTEDHANDLES 'hgsU'
-#define USERTAG_GESTUREINFO 'igsU'
-#define USERTAG_GLOBALTHREADLOCK 'lgsU'
-#define USERTAG_GHOST 'tgsU'
-#define USERTAG_HIDDATA 'ahsU'
-#define USERTAG_HIDDESC 'DhsU'
-#define USERTAG_HOTKEY 'khsU'
-#define USERTAG_IMEHOTKEY 'hisU'
-#define USERTAG_IME 'misU'
-#define USERTAG_W32JOB 'bjsU'
-#define USERTAG_W32JOBEXTRA 'xjsU'
-#define USERTAG_KBDLAYOUT 'bksU'
-#define USERTAG_KBDEXID 'eksU'
-#define USERTAG_KBDFILE 'fksU'
-#define USERTAG_KBDSTATE 'sksU'
-#define USERTAG_KBDTABLE 'tksU'
-#define USERTAG_LOOKASIDE 'alsU'
-#define USERTAG_LOGDESKTOP 'dlsU'
-#define USERTAG_LOCKRECORD 'rlsU'
-#define USERTAG_MAGNIFICATION 'gmsU'
-#define USERTAG_MIRROR 'imsU'
-#define USERTAG_MESSAGE_FILTER 'lmsU'
-#define USERTAG_MONITORRECTS 'rmsU'
-#define USERTAG_MOVESIZE 'smsU'
-#define USERTAG_MENUSTATE 'tmsU'
-#define USERTAG_NKAPC 'ansU'
-#define USERTAG_NOTIFY 'ynsU'
-#define USERTAG_POWERBROADCAST 'bpsU'
-#define USERTAG_PROCESSINFO 'ipsU'
-#define USERTAG_POPUPMENU 'mpsU'
-#define USERTAG_PROFILEUSERNAME 'npsU'
-#define USERTAG_POWER 'opsU'
-#define USERTAG_PNP 'ppsU'
-#define USERTAG_PROFILE 'rpsU'
-#define USERTAG_WINDOWARRAY 'wpsU'
-#define USERTAG_SQM 'mqsU'
-#define USERTAG_QMSG 'mqsU'
-#define USERTAG_Q 'uqsU'
-#define USERTAG_RTL 'trsU'
-#define USERTAG_SMS_ASYNC 'assU'
-#define USERTAG_SPB 'bssU'
-#define USERTAG_SMS_CAPTURE 'cssU'
-#define USERTAG_SHADOW 'dssU'
-#define USERTAG_SECURITY 'essU'
-#define USERTAG_SENDINPUT 'issU'
-#define USERTAG_SENDTOUCHINPUT 'jssU'
-#define USERTAG_SMS 'mssU'
-#define USERTAG_SMS_STRING 'sssU'
-#define USERTAG_SCROLLTRACK 'tssU'
-#define USERTAG_SWP 'wssU'
-#define USERTAG_SYSTEM 'yssU'
-#define USERTAG_TRACKDESKTOP 'dtsU'
-#define USERTAG_THREADINFO 'itsU'
-#define USERTAG_STACK 'ktsU'
-#define USERTAG_TIMER 'mtsU'
-#define USERTAG_TOKEN 'otsU'
-#define USERTAG_SECTION 'stsU'
-#define USERTAG_TEXT 'xtsU'
-#define USERTAG_TEXT2 'ytsU'
-#define USERTAG_TOUCHINPUTINFO 'ztsU'
-#define USERTAG_UNICODEBUFFER 'busU'
-#define USERTAG_UIPI_SQM 'susU'
-#define USERTAG_VISRGN 'ivsU'
-#define USERTAG_VWPL 'lvsU'
-#define USERTAG_WINDOW 'dwsU'
-#define USERTAG_WINEVENT 'ewsU'
-#define USERTAG_WINDOWLIST 'lwsU'
-#define USERTAG_WOWTDB 'owsU'
-#define USERTAG_WOWPROCESSINFO 'pwsU'
-#define USERTAG_WOWTHREADINFO 'twsU'
+#define GDITAG_HMGR_LOOKASIDE_START '0alG'
+#define GDITAG_HMGR_LOOKASIDE_DC_TYPE '1alG'
+#define GDITAG_HMGR_LOOKASIDE_RGN_TYPE '4alG'
+#define GDITAG_HMGR_LOOKASIDE_SURF_TYPE '5alG'
+#define GDITAG_HMGR_LOOKASIDE_PAL_TYPE '8alG'
+#define GDITAG_LDEV 'vdlG'
+#define GDITAG_LOCALEINFO 'dilG'
+#define GDITAG_PFE_LINK 'knlG'
+#define GDITAG_FONT_MAPPER 'pamG'
+#define GDITAG_DISPURF_SORT 'osmG'
+#define GDITAG_MULTIFONT 'lumG'
+#define GDITAG_NLS 'slnG'
+#define GDITAG_OPENGL 'lgoG'
+#define GDITAG_OPM 'MPOG'
+#define GDITAG_PALETTE 'laPG'
+#define GDITAG_PANNING_PDEV 'napG'
+#define GDITAG_PATHOBJ 'tapG'
+#define GDITAG_PFF_INDEXES 'efpG'
+#define GDITAG_PFF 'ffpG'
+#define GDITAG_PFT 'tfpG'
+#define GDITAG_PLGBLT_DATA 'bgpG'
+#define GDITAG_PRINTCLIENTID 'dipG'
+#define GDITAG_CLIP_PATHOBJ 'oppG'
+#define GDITAG_PROXYPORT 'tppG'
+#define GDITAG_PRESENT 'erpG'
+#define GDITAG_LFONT_QUICKLOOKUP 'knqG'
+#define GDITAG_PALETTE_RGB_XLATE 'bgrG'
+#define GDITAG_REGION 'ngrG'
+#define GDITAG_SEMAPHORE 'mesG'
+#define GDITAG_SPRITE ' psG'
+#define GDITAG_METASPRITE 'mpsG'
+#define GDITAG_SPRITESCAN 'rpsG'
+#define GDITAG_STACKTRACE 'atsG'
+#define GDITAG_STRETCHBLT 'htsG'
+#define GDITAG_PENSTYLE 'ytsG'
+#define GDITAG_SFM 'xusG'
+#define GDITAG_TEMP 'pmtG'
+#define GDITAG_TEMP_THREADLOCK 'pmTG'
+#define GDITAG_TEXTMETRICS 'wmtG'
+#define GDITAG_PFF_DATA 'pvtG'
+#define GDITAG_TRIANGLE_MESH 'tvtG'
+#define GDITAG_TEXT 'txtG'
+#define GDITAG_UMODE_BITMAP 'mbuG'
+#define GDITAG_ENG_USER_MEM_ALLOC_TABLE 'amUG'
+#define GDITAG_UMPD 'pmuG'
+#define GDITAG_HDEV 'sdvG'
+#define GDITAG_VDEV 'vdVG'
+#define GDITAG_MULTISAVEBITS 'smVG'
+#define GDITAG_MDSURF 'fsVG'
+#define GDITAG_WNDOBJ 'dnwG'
+#define GDITAG_PXLATE 'tlxG'
+#define GDITAG_UMPDOBJ 'dpxG'
+#define GDITAG_FONT_LINK 'flnk'
+#define GDITAG_PANNING_SURFACE 'fSAP'
+#define GDITAG_PANNING_SHADOWLOCK 'olSP'
+#define GDITAG_SINGLEREADERLOCK 'lrsS'
+#define GDITAG_TT_FONT_CACHE 'CFTT'
+#define GDITAG_TT_FONT 'dftT'
+#define GDITAG_VF_FONT 'dftV'
+#define GDITAG_W32PIDLOCK 'l23W'
+#define GDITAG_HANDLEPUSHLOCK 'lpHG'
+
+#define USERTAG_SERVICE_TABLE 'lacU'
+#define USERTAG_MONITOR_MARGIN 'mamU'
+#define USERTAG_REDIRECT 'rdrU'
+#define USERTAG_ACCEL 'casU'
+#define USERTAG_ATTACHINFO 'iasU'
+#define USERTAG_ALTTAB 'lasU'
+#define USERTAG_DEBUG 'gbsU'
+#define USERTAG_CLIPBOARD 'bcsU'
+#define USERTAG_CALLBACK 'ccsU'
+#define USERTAG_COMPOSITIONPROP 'dcsU'
+#define USERTAG_CLIENTTHREADINFO 'icsU'
+#define USERTAG_CLASS 'lcsU'
+#define USERTAG_SCANCODEMAP 'mcsU'
+#define USERTAG_CLIPBOARDPALETTE 'pcsU'
+#define USERTAG_COLORS 'rcsU'
+#define USERTAG_CHECKPT 'tcsU'
+#define USERTAG_CURSOR 'ucsU'
+#define USERTAG_COLORVALUES 'vcsU'
+#define USERTAG_DDE1 '1dsU'
+#define USERTAG_DDE2 '2dsU'
+#define USERTAG_DDE4 '4dsU'
+#define USERTAG_DDE5 '5dsU'
+#define USERTAG_DDE6 '6dsU'
+#define USERTAG_DDE7 '7dsU'
+#define USERTAG_DDE8 '8dsU'
+#define USERTAG_DDE9 '9dsU'
+#define USERTAG_DDEa 'AdsU'
+#define USERTAG_DDEb 'BdsU'
+#define USERTAG_DCE 'cdsU'
+#define USERTAG_DDEd 'DdsU'
+#define USERTAG_DDE 'EdsU'
+#define USERTAG_DEVICEINFO 'IDsU'
+#define USERTAG_DISPLAYINFO 'idsU'
+#define USERTAG_DRAGDROP 'sdsU'
+#define USERTAG_DEVICECHANGE 'vdsU'
+#define USERTAG_WSEXCOMPINVALID 'CEsU'
+#define USERTAG_ERESOURCE 'resU'
+#define USERTAG_EVENT 'vesU'
+#define USERTAG_FORWARDTOUCHMESSAGE 'tfsU'
+#define USERTAG_GRANTEDHANDLES 'hgsU'
+#define USERTAG_GESTUREINFO 'igsU'
+#define USERTAG_GLOBALTHREADLOCK 'lgsU'
+#define USERTAG_GHOST 'tgsU'
+#define USERTAG_HIDDATA 'ahsU'
+#define USERTAG_HIDDESC 'DhsU'
+#define USERTAG_HOTKEY 'khsU'
+#define USERTAG_IMEHOTKEY 'hisU'
+#define USERTAG_IME 'misU'
+#define USERTAG_W32JOB 'bjsU'
+#define USERTAG_W32JOBEXTRA 'xjsU'
+#define USERTAG_KBDLAYOUT 'bksU'
+#define USERTAG_KBDEXID 'eksU'
+#define USERTAG_KBDFILE 'fksU'
+#define USERTAG_KBDSTATE 'sksU'
+#define USERTAG_KBDTABLE 'tksU'
+#define USERTAG_LOOKASIDE 'alsU'
+#define USERTAG_LOGDESKTOP 'dlsU'
+#define USERTAG_LOCKRECORD 'rlsU'
+#define USERTAG_MAGNIFICATION 'gmsU'
+#define USERTAG_MIRROR 'imsU'
+#define USERTAG_MESSAGE_FILTER 'lmsU'
+#define USERTAG_MONITORRECTS 'rmsU'
+#define USERTAG_MOVESIZE 'smsU'
+#define USERTAG_MENUSTATE 'tmsU'
+#define USERTAG_NKAPC 'ansU'
+#define USERTAG_NOTIFY 'ynsU'
+#define USERTAG_POWERBROADCAST 'bpsU'
+#define USERTAG_PROCESSINFO 'ipsU'
+#define USERTAG_POPUPMENU 'mpsU'
+#define USERTAG_PROFILEUSERNAME 'npsU'
+#define USERTAG_POWER 'opsU'
+#define USERTAG_PNP 'ppsU'
+#define USERTAG_PROFILE 'rpsU'
+#define USERTAG_WINDOWARRAY 'wpsU'
+#define USERTAG_SQM 'mqsU'
+#define USERTAG_QMSG 'mqsU'
+#define USERTAG_Q 'uqsU'
+#define USERTAG_RTL 'trsU'
+#define USERTAG_SMS_ASYNC 'assU'
+#define USERTAG_SPB 'bssU'
+#define USERTAG_SMS_CAPTURE 'cssU'
+#define USERTAG_SHADOW 'dssU'
+#define USERTAG_SECURITY 'essU'
+#define USERTAG_SENDINPUT 'issU'
+#define USERTAG_SENDTOUCHINPUT 'jssU'
+#define USERTAG_SMS 'mssU'
+#define USERTAG_SMS_STRING 'sssU'
+#define USERTAG_SCROLLTRACK 'tssU'
+#define USERTAG_SWP 'wssU'
+#define USERTAG_SYSTEM 'yssU'
+#define USERTAG_TRACKDESKTOP 'dtsU'
+#define USERTAG_THREADINFO 'itsU'
+#define USERTAG_STACK 'ktsU'
+#define USERTAG_TIMER 'mtsU'
+#define USERTAG_TOKEN 'otsU'
+#define USERTAG_SECTION 'stsU'
+#define USERTAG_TEXT 'xtsU'
+#define USERTAG_TEXT2 'ytsU'
+#define USERTAG_TOUCHINPUTINFO 'ztsU'
+#define USERTAG_UNICODEBUFFER 'busU'
+#define USERTAG_UIPI_SQM 'susU'
+#define USERTAG_VISRGN 'ivsU'
+#define USERTAG_VWPL 'lvsU'
+#define USERTAG_WINDOW 'dwsU'
+#define USERTAG_WINEVENT 'ewsU'
+#define USERTAG_WINDOWLIST 'lwsU'
+#define USERTAG_WOWTDB 'owsU'
+#define USERTAG_WOWPROCESSINFO 'pwsU'
+#define USERTAG_WOWTHREADINFO 'twsU'
Accel->Count = EntriesCount;
if (Accel->Count > 0)
{
- Accel->Table = ExAllocatePoolWithTag(PagedPool, EntriesCount * sizeof(ACCEL), TAG_ACCEL);
+ Accel->Table = ExAllocatePoolWithTag(PagedPool, EntriesCount * sizeof(ACCEL), USERTAG_ACCEL);
if (Accel->Table == NULL)
{
UserDereferenceObject(Accel);
}
else
{
- RtlMultiByteToUnicodeN(&Accel->Table[Index].key,
- sizeof(WCHAR),
- NULL,
- (PCSTR)&Entries[Index].key,
+ RtlMultiByteToUnicodeN(&Accel->Table[Index].key,
+ sizeof(WCHAR),
+ NULL,
+ (PCSTR)&Entries[Index].key,
sizeof(CHAR));
}
if (Accel->Table != NULL)
{
- ExFreePoolWithTag(Accel->Table, TAG_ACCEL);
+ ExFreePoolWithTag(Accel->Table, USERTAG_ACCEL);
Accel->Table = NULL;
}
PTHREADINFO W32Thread;
if(!(Mem = ExAllocatePoolWithTag(PagedPool, Size + sizeof(INT_CALLBACK_HEADER),
- TAG_CALLBACK)))
+ USERTAG_CALLBACK)))
{
return NULL;
}
RemoveEntryList(&Mem->ListEntry);
/* free memory */
- ExFreePoolWithTag(Mem, TAG_CALLBACK);
+ ExFreePoolWithTag(Mem, USERTAG_CALLBACK);
}
VOID FASTCALL
case WH_MOUSE:
RtlCopyMemory(Extra, (PVOID) lParam, sizeof(MOUSEHOOKSTRUCT));
Common->lParam = (LPARAM) (Extra - (PCHAR) Common);
- break;
+ break;
case WH_CALLWNDPROC:
RtlCopyMemory(Extra, (PVOID) lParam, sizeof(CWPSTRUCT));
Common->lParam = (LPARAM) (Extra - (PCHAR) Common);
- break;
+ break;
case WH_CALLWNDPROCRET:
RtlCopyMemory(Extra, (PVOID) lParam, sizeof(CWPRETSTRUCT));
Common->lParam = (LPARAM) (Extra - (PCHAR) Common);
- break;
+ break;
case WH_MSGFILTER:
case WH_SYSMSGFILTER:
case WH_GETMESSAGE:
case WH_FOREGROUNDIDLE:
case WH_KEYBOARD:
case WH_SHELL:
- break;
+ break;
}
ResultPointer = NULL;
UserEnterCo();
IntCbFreeMemory(Argument);
-
+
if (!NT_SUCCESS(Status))
{
return 0;
Common = (PLOADMENU_CALLBACK_ARGUMENTS) Argument;
// Help Intersource check and MenuName is now 4 bytes + so zero it.
- RtlZeroMemory(Common, ArgumentLength);
+ RtlZeroMemory(Common, ArgumentLength);
Common->hModule = hModule;
if (pMenuName->Length)
RETURN( FALSE);
}
- HotKeyItem = ExAllocatePoolWithTag (PagedPool, sizeof(HOT_KEY_ITEM), TAG_HOTKEY);
+ HotKeyItem = ExAllocatePoolWithTag (PagedPool, sizeof(HOT_KEY_ITEM), USERTAG_HOTKEY);
if (HotKeyItem == NULL)
{
RETURN( FALSE);
if (HotKeyItem->hWnd == hWnd && HotKeyItem->id == id)
{
RemoveEntryList (&HotKeyItem->ListEntry);
- ExFreePool (HotKeyItem);
+ ExFreePoolWithTag(HotKeyItem, USERTAG_HOTKEY);
RETURN( TRUE);
}
Ret = ExAllocatePoolWithTag(PagedPool,
Size,
- TAG_KEYBOARD);
+ USERTAG_KBDTABLE);
while (Ret)
{
if (Status != STATUS_BUFFER_TOO_SMALL)
break;
- ExFreePoolWithTag(Ret, TAG_KEYBOARD);
+ ExFreePoolWithTag(Ret, USERTAG_KBDTABLE);
Size += sizeof(KEYBOARD_INDICATOR_TRANSLATION);
Ret = ExAllocatePoolWithTag(PagedPool,
Size,
- TAG_KEYBOARD);
+ USERTAG_KBDTABLE);
}
if (!Ret)
if (Status != STATUS_SUCCESS)
{
- ExFreePoolWithTag(Ret, TAG_KEYBOARD);
+ ExFreePoolWithTag(Ret, USERTAG_KBDTABLE);
return Status;
}
KeInitializeEvent(&InputThreadsStart, NotificationEvent, FALSE);
- MasterTimer = ExAllocatePoolWithTag(NonPagedPool, sizeof(KTIMER), TAG_INPUT);
+ MasterTimer = ExAllocatePoolWithTag(NonPagedPool, sizeof(KTIMER), USERTAG_SYSTEM);
if (!MasterTimer)
{
DPRINT1("Win32K: Failed making Raw Input thread a win32 thread.\n");
/* If Attach set, allocate and link. */
if ( fAttach )
{
- pai = ExAllocatePoolWithTag(PagedPool, sizeof(ATTACHINFO), TAG_ATTACHINFO);
+ pai = ExAllocatePoolWithTag(PagedPool, sizeof(ATTACHINFO), USERTAG_ATTACHINFO);
if ( !pai ) return FALSE;
pai->paiNext = gpai;
if (paiprev) paiprev->paiNext = pai->paiNext;
- ExFreePoolWithTag(pai, TAG_ATTACHINFO);
+ ExFreePoolWithTag(pai, USERTAG_ATTACHINFO);
}
return TRUE;
ULONG hKl;
LANGID langid;
- NewKbl = ExAllocatePoolWithTag(PagedPool, sizeof(KBL), TAG_KEYBOARD);
+ NewKbl = ExAllocatePoolWithTag(PagedPool, sizeof(KBL), USERTAG_KBDLAYOUT);
if(!NewKbl)
{
if(!UserLoadKbdDll(NewKbl->Name, &NewKbl->hModule, &NewKbl->KBTables))
{
DPRINT("%s: failed to load %x dll!\n", __FUNCTION__, LocaleId);
- ExFreePoolWithTag(NewKbl, TAG_KEYBOARD);
+ ExFreePoolWithTag(NewKbl, USERTAG_KBDLAYOUT);
return NULL;
}
//Unload the layout
EngUnloadImage(pKbl->hModule);
RemoveEntryList(&pKbl->List);
- ExFreePoolWithTag(pKbl, TAG_KEYBOARD);
+ ExFreePoolWithTag(pKbl, USERTAG_KBDLAYOUT);
}
return TRUE;
if (ForegroundQueue)
ptiForeground = ForegroundQueue->Thread->Tcb.Win32Thread;
-
+
pti = PsGetCurrentThreadWin32Thread();
- if ( pti )
+ if ( pti )
{
pti->pClientInfo->cSpins = 0; // Reset spins.
(LPARAM)Time,
0);
}
- return retval;
+ return retval;
}
else
{
// Need a window!
if ( !Window ) return 0;
- /* Since we are doing a callback on the same thread right away, there is
+ /* Since we are doing a callback on the same thread right away, there is
no need to copy the lparam to kernel mode and then back to usermode.
We just pretend it isn't a pointer */
}
if ((ProcessMask & QS_INPUT) &&
- co_MsqPeekHardwareMessage( ThreadQueue,
- RemoveMessages,
- Window,
- MsgFilterMin,
+ co_MsqPeekHardwareMessage( ThreadQueue,
+ RemoveMessages,
+ Window,
+ MsgFilterMin,
MsgFilterMax,
- ProcessMask,
+ ProcessMask,
Msg))
{
return TRUE;
EngSetLastError(ERROR_INVALID_PARAMETER);
return FALSE;
}
- co_IntSendMessageNoWait(KernelModeMsg.hwnd,
- KernelModeMsg.message,
- KernelModeMsg.wParam,
+ co_IntSendMessageNoWait(KernelModeMsg.hwnd,
+ KernelModeMsg.message,
+ KernelModeMsg.wParam,
KernelModeMsg.lParam);
if (MsgMemoryEntry && KernelModeMsg.lParam)
{
UserPostMessage(List[i], Msg, wParam, lParam);
}
- ExFreePoolWithTag(List,TAG_WINLIST);//ExFreePool(List);
+ ExFreePoolWithTag(List, USERTAG_WINDOWLIST);
}
}
else
/* FIXME - last error code? */
return FALSE;
}
-
+
if (WM_QUIT == Msg)
{
MsqPostQuitMessage(Window->head.pti->MessageQueue, wParam);
}
else
- {
+ {
MsqPostMessage(Window->head.pti->MessageQueue, &Message, FALSE, QS_POSTMESSAGE);
}
}
return (LRESULT) TRUE;
}
-LRESULT FASTCALL
+LRESULT FASTCALL
co_IntSendMessageNoWait(HWND hWnd,
UINT Msg,
WPARAM wParam,
Message->QS_Flags = QS_SENDMESSAGE;
MsqWakeQueue(Window->head.pti->MessageQueue, QS_SENDMESSAGE, FALSE);
-
+
InsertTailList(&Window->head.pti->MessageQueue->SentMessagesListHead, &Message->ListEntry);
IntDereferenceMessageQueue(Window->head.pti->MessageQueue);
// wine:
Changes &= (QS_ALLINPUT|QS_ALLPOSTMESSAGE|QS_SMRESULT);
- /* High word, types of messages currently in the queue.
+ /* High word, types of messages currently in the queue.
Low word, types of messages that have been added to the queue and that
- are still in the queue
+ are still in the queue
*/
Result = MAKELONG(pti->pcti->fsChangeBits & Changes, pti->pcti->fsWakeBits & Changes);
ret = UserPostThreadMessage( idThread, Msg, wParam, lParam);
UserLeave();
-
+
return ret;
}
ret = co_IntWaitMessage(NULL, 0, 0);
DPRINT("NtUserWaitMessage Leave\n");
UserLeave();
-
+
return ret;
}
}
_SEH2_END;
}
-
+
return Ret;
}
BOOL APIENTRY
NtUserMessageCall( HWND hWnd,
- UINT Msg,
+ UINT Msg,
WPARAM wParam,
LPARAM lParam,
ULONG_PTR ResultInfo,
{
CALL_BACK_INFO CallBackInfo;
ULONG_PTR uResult;
-
+
_SEH2_TRY
{
ProbeForRead((PVOID)ResultInfo, sizeof(CALL_BACK_INFO), 1);
}
_SEH2_END;
}
-
+
Ret = co_IntDoSendMessage( hWnd, Msg, wParam, lParam, &dsm );
if (pdsm)
pti = Queue->Thread->Tcb.Win32Thread;
if (MessageBits & QS_KEY)
- {
+ {
if (--Queue->nCntsQBits[QSRosKey] == 0) ClrMask |= QS_KEY;
}
if (MessageBits & QS_MOUSEMOVE) // ReactOS hard coded.
pwnd != NULL;
pwnd = pwnd->spwndNext )
{
- if((pwnd->style & WS_VISIBLE) &&
+ if((pwnd->style & WS_VISIBLE) &&
IntPtInWindow(pwnd, Msg->pt.x, Msg->pt.y))
{
Msg->hwnd = pwnd->head.h;
if (pwndParent == pwndDesktop) break;
pt.x += pwnd->rcClient.left - pwndParent->rcClient.left;
pt.y += pwnd->rcClient.top - pwndParent->rcClient.top;
-
+
pwnd = pwndParent;
co_IntSendMessage( UserHMGetHandle(pwnd), WM_PARENTNOTIFY,
MAKEWPARAM( event, idChild ), MAKELPARAM( pt.x, pt.y ) );
}
DPRINT("Got mouse message for 0x%x, hittest: 0x%x\n", msg->hwnd, hittest );
-
+
if (pwndMsg == NULL || pwndMsg->head.pti != pti)
{
/* Remove and ignore the message */
}
}
- if (!((first == 0 && last == 0) || (message >= first || message <= last)))
+ if (!((first == 0 && last == 0) || (message >= first || message <= last)))
{
DPRINT("Message out of range!!!\n");
RETURN(FALSE);
if (pwndTop && pwndTop != pwndDesktop)
{
- LONG ret = co_IntSendMessage( msg->hwnd,
- WM_MOUSEACTIVATE,
+ LONG ret = co_IntSendMessage( msg->hwnd,
+ WM_MOUSEACTIVATE,
(WPARAM)UserHMGetHandle(pwndTop),
MAKELONG( hittest, msg->message));
switch(ret)
CurrentMessage = CONTAINING_RECORD(CurrentEntry, USER_MESSAGE,
ListEntry);
- do
+ do
{
if (IsListEmpty(CurrentEntry)) break;
if (!CurrentMessage) break;
PLIST_ENTRY CurrentEntry;
PUSER_MESSAGE CurrentMessage;
PLIST_ENTRY ListHead;
-
+
CurrentEntry = MessageQueue->PostedMessagesListHead.Flink;
ListHead = &MessageQueue->PostedMessagesListHead;
ret = KeWaitForSingleObject(MessageQueue->NewMessages,
Executive,
UserMode,
- FALSE,
+ FALSE,
NULL);
UserEnterCo();
return ret;
PUSER_MESSAGE CurrentMessage;
PUSER_SENT_MESSAGE CurrentSentMessage;
PTHREADINFO pti;
-
+
pti = MessageQueue->Thread->Tcb.Win32Thread;
DPRINT("Notify the sender and remove a message from the queue that had not been dispatched\n");
/* remove the message from the dispatching list if needed */
- if ((!(CurrentSentMessage->HookMessage & MSQ_SENTNOWAIT))
+ if ((!(CurrentSentMessage->HookMessage & MSQ_SENTNOWAIT))
&& (CurrentSentMessage->DispatchingListEntry.Flink != NULL))
{
RemoveEntryList(&CurrentSentMessage->DispatchingListEntry);
MessageQueue = (PUSER_MESSAGE_QUEUE)ExAllocatePoolWithTag(NonPagedPool,
sizeof(USER_MESSAGE_QUEUE) + sizeof(THRDCARETINFO),
- TAG_MSGQ);
+ USERTAG_Q);
if (!MessageQueue)
{
{
PDCE pDce;
- pDce = ExAllocatePoolWithTag(PagedPool, sizeof(DCE), TAG_PDCE);
+ pDce = ExAllocatePoolWithTag(PagedPool, sizeof(DCE), USERTAG_DCE);
if(!pDce)
return NULL;
pDce->hDC = DceCreateDisplayDC();
if (!pDce->hDC)
{
- ExFreePoolWithTag(pDce, TAG_PDCE);
+ ExFreePoolWithTag(pDce, USERTAG_DCE);
return NULL;
}
DCECount++;
}
while (pLE != &LEDce );
}
-#endif
+#endif
}
return 1; // Released!
}
if (!Dce) break;
//
// The way I understand this, you can have more than one DC per window.
-// Only one Owned if one was requested and saved and one Cached.
+// Only one Owned if one was requested and saved and one Cached.
//
if ((Dce->DCXFlags & (DCX_CACHE | DCX_DCEBUSY)) == DCX_CACHE)
{
KeLeaveCriticalRegion();
if ( (Flags & (DCX_INTERSECTRGN|DCX_EXCLUDERGN)) &&
- (Dce->DCXFlags & (DCX_INTERSECTRGN|DCX_EXCLUDERGN)) )
+ (Dce->DCXFlags & (DCX_INTERSECTRGN|DCX_EXCLUDERGN)) )
{
DceDeleteClipRgn(Dce);
}
NtGdiSetLayout(Dce->hDC, -1, LAYOUT_RTL);
}
- if (Dce->DCXFlags & DCX_PROCESSOWNED)
+ if (Dce->DCXFlags & DCX_PROCESSOWNED)
{
ppi = PsGetCurrentProcessWin32Process();
ppi->W32PF_flags |= W32PF_OWNDCCLEANUP;
return NULL;
}
- ExFreePoolWithTag(pdce, TAG_PDCE);
+ ExFreePoolWithTag(pdce, USERTAG_DCE);
DCECount--;
DPRINT("Freed DCE's! %d \n", DCECount);
for (Child = Window->spwndChild; Child; Child = Child->spwndNext)
++NumChildren;
- List = ExAllocatePoolWithTag(PagedPool, (NumChildren + 1) * sizeof(HWND), TAG_WINLIST);
+ List = ExAllocatePoolWithTag(PagedPool, (NumChildren + 1) * sizeof(HWND), USERTAG_WINDOWLIST);
if(!List)
{
DPRINT1("Failed to allocate memory for children array\n");
PCLIENTINFO ClientInfo = GetWin32ClientInfo();
if (!Wnd) return;
-
+
if (ClientInfo->CallbackWnd.pWnd == DesktopHeapAddressToUser(Wnd))
{
ClientInfo->CallbackWnd.hWnd = NULL;
}
-/*
- link the window into siblings list
+/*
+ link the window into siblings list
children and parent are kept in place.
*/
VOID FASTCALL
{
if (hWndPrev == HWND_NOTOPMOST)
{
- if (!(Wnd->ExStyle & WS_EX_TOPMOST) &&
+ if (!(Wnd->ExStyle & WS_EX_TOPMOST) &&
(Wnd->ExStyle2 & WS_EX2_LINKED)) return; /* nothing to do */
Wnd->ExStyle &= ~WS_EX_TOPMOST;
hWndPrev = HWND_TOP; /* fallback to the HWND_TOP case */
}
IntUnlinkWindow(Wnd); /* unlink it from the previous location */
-
+
if (hWndPrev == HWND_BOTTOM)
{
/* Link in the bottom of the list */
IntLinkWindow(Wnd, WndInsertAfter);
/* Fix the WS_EX_TOPMOST flag */
- if (!(WndInsertAfter->ExStyle & WS_EX_TOPMOST))
+ if (!(WndInsertAfter->ExStyle & WS_EX_TOPMOST))
{
Wnd->ExStyle &= ~WS_EX_TOPMOST;
}
{
if (Wnd->spwndNext)
Wnd->spwndNext->spwndPrev = Wnd->spwndPrev;
-
+
if (Wnd->spwndPrev)
Wnd->spwndPrev->spwndNext = Wnd->spwndNext;
if (Wnd->spwndParent && Wnd->spwndParent->spwndChild == Wnd)
Wnd->spwndParent->spwndChild = Wnd->spwndNext;
-
+
Wnd->spwndPrev = Wnd->spwndNext = NULL;
}
{
co_IntSendMessage( pWindow->spwndParent->head.h,
WM_PARENTNOTIFY,
- MAKEWPARAM( msg, pWindow->IDMenu),
+ MAKEWPARAM( msg, pWindow->IDMenu),
(LPARAM)pWindow->head.h );
}
}
}
/* Allocates and initializes a window*/
-PWND FASTCALL IntCreateWindow(CREATESTRUCTW* Cs,
- PLARGE_STRING WindowName,
+PWND FASTCALL IntCreateWindow(CREATESTRUCTW* Cs,
+ PLARGE_STRING WindowName,
PCLS Class,
PWND ParentWindow,
PWND OwnerWindow)
Cs->dwExStyle |= WS_EX_LAYOUTRTL;
}
else
- {/*
+ {/*
Note from MSDN http://msdn.microsoft.com/en-us/library/aa913269.aspx :
Dialog boxes and message boxes do not inherit layout, so you must
Cs->dwExStyle |= WS_EX_LAYOUTRTL;
}
}
- }
+ }
}
/* Automatically add WS_EX_WINDOWEDGE */
if (bUnicodeWindow)
{
if (GETPFNCLIENTA(pWnd->pcls->fnid) == pWnd->lpfnWndProc)
- pWnd->lpfnWndProc = GETPFNCLIENTW(pWnd->pcls->fnid);
+ pWnd->lpfnWndProc = GETPFNCLIENTW(pWnd->pcls->fnid);
}
else
{
}
/* BugBoy Comments: if the window being created is a edit control, ATOM 0xCxxx,
- then my testing shows that windows (2k and XP) creates a CallProc for it immediately
+ then my testing shows that windows (2k and XP) creates a CallProc for it immediately
Dont understand why it does this. */
if (Class->atomClassName == gpsi->atomSysClass[ICLS_EDIT])
{
if(pWnd)
UserDereferenceObject(pWnd);
-
+
SetLastNtError(STATUS_INSUFFICIENT_RESOURCES);
return NULL;
}
OwnerWindow = UserGetAncestor(OwnerWindow, GA_ROOT);
/* Fix the position and the size of the window */
- if (ParentWindow)
+ if (ParentWindow)
{
UserRefObjectCo(ParentWindow, &ParentRef);
IntFixWindowCoordinates(Cs, ParentWindow, &dwShowMode);
}
/* Allocate and initialize the new window */
- Window = IntCreateWindow(Cs,
- WindowName,
- Class,
- ParentWindow,
+ Window = IntCreateWindow(Cs,
+ WindowName,
+ Class,
+ ParentWindow,
OwnerWindow);
if(!Window)
{
UnicodeString.MaximumLength = Name.Length + sizeof(UNICODE_NULL);
pszName = UserHeapAlloc(UnicodeString.MaximumLength);
RtlZeroMemory(pszName, UnicodeString.MaximumLength);
- UnicodeString.Buffer = (PWSTR)pszName;
+ UnicodeString.Buffer = (PWSTR)pszName;
RtlCopyUnicodeString(&UnicodeString, &Name);
}
if (pszName) pCsw->lpszName = UserHeapAddressToUser(pszName);
Window->rcWindow.bottom = Cs->y + Size.cy;
if (0 != (Window->style & WS_CHILD) && ParentWindow)
{
- RECTL_vOffsetRect(&Window->rcWindow,
+ RECTL_vOffsetRect(&Window->rcWindow,
ParentWindow->rcClient.left,
ParentWindow->rcClient.top);
}
{
DPRINT("co_UserCreateWindowEx(): Error Created window!\n");
/* If the window was created, the class will be dereferenced by co_UserDestroyWindow */
- if (Window)
+ if (Window)
co_UserDestroyWindow(Window);
else if (Class)
IntDereferenceClass(Class, pti->pDeskInfo, pti->ppi);
return hwnd;
}
-
+
BOOLEAN FASTCALL co_UserDestroyWindow(PWND Window)
{
CurrentWindowName.Buffer = Child->strName.Buffer;
CurrentWindowName.Length = Child->strName.Length;
CurrentWindowName.MaximumLength = Child->strName.MaximumLength;
- if(!CheckWindowName ||
+ if(!CheckWindowName ||
(Child->strName.Length < 0xFFFF &&
!RtlCompareUnicodeString(WindowName, &CurrentWindowName, TRUE)))
{
ustr.Buffer = TopLevelWindow->strName.Buffer;
ustr.Length = TopLevelWindow->strName.Length;
ustr.MaximumLength = TopLevelWindow->strName.MaximumLength;
- WindowMatches = !CheckWindowName ||
- (TopLevelWindow->strName.Length < 0xFFFF &&
+ WindowMatches = !CheckWindowName ||
+ (TopLevelWindow->strName.Length < 0xFFFF &&
!RtlCompareUnicodeString(&WindowName, &ustr, TRUE));
ClassMatches = (ClassAtom == (RTL_ATOM)0) ||
ClassAtom == TopLevelWindow->pcls->atomClassName;
sizeof(POINT),
1);
}
-
+
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
}
_SEH2_END;
- wndpl.length = sizeof(WINDOWPLACEMENT);
+ wndpl.length = sizeof(WINDOWPLACEMENT);
if (IntGetWindowPlacement(Window, &wndpl) && !Hit)
{
{
RtlCopyMemory(ptIcon, &wndpl.ptMinPosition, sizeof(POINT));
}
-
+
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
RETURN( FALSE);
}
}
-
+
Wnd->fnid |= fnID;
RETURN( TRUE);
* 1 0 1 0 1101xax = 111ax = 11x = 0
* 1 1 0 1 0110xax = 011ax = 01x = 1
* 1 1 1 1 1111xax = 110ax = 10x = 1
- *
- * Operation index = 11001010 = 0xCA = PSaDPnao = DPSDxax
+ *
+ * Operation index = 11001010 = 0xCA = PSaDPnao = DPSDxax
* ^ no, this is not random letters, its reverse Polish notation
*/
if (cRects > 0)
{
- rb = ExAllocatePoolWithTag(PagedPool, sizeof(PATRECT) * cRects, TAG_PATBLT);
+ rb = ExAllocatePoolWithTag(PagedPool, sizeof(PATRECT) * cRects, GDITAG_PLGBLT_DATA);
if (!rb)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
if (!NT_SUCCESS(Status))
{
- ExFreePoolWithTag(rb, TAG_PATBLT);
+ ExFreePoolWithTag(rb, GDITAG_PLGBLT_DATA);
SetLastNtError(Status);
return FALSE;
}
Ret = IntGdiPolyPatBlt(hDC, dwRop, rb, cRects, Mode);
if (cRects > 0)
- ExFreePoolWithTag(rb, TAG_PATBLT);
+ ExFreePoolWithTag(rb, GDITAG_PLGBLT_DATA);
return Ret;
}
Size = Count * sizeof(POINT);
// FIXME: It would be wise to have a small stack buffer as optimization
- Points = ExAllocatePoolWithTag(PagedPool, Size, TAG_COORD);
+ Points = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEMP);
if (!Points)
{
DC_UnlockDc(pdc);
//
leave:
DC_UnlockDc(pdc);
- ExFreePoolWithTag(Points, TAG_COORD);
+ ExFreePoolWithTag(Points, GDITAG_TEMP);
return ret;
}
* PURPOSE: Font
* PROGRAMMER:
*/
-
+
/** Includes ******************************************************************/
#include <win32k.h>
EngSetLastError(ERROR_INSUFFICIENT_BUFFER);
return 0;
}
- pKP = ExAllocatePoolWithTag(PagedPool, Count * sizeof(KERNINGPAIR), TAG_GDITEXT);
+ pKP = ExAllocatePoolWithTag(PagedPool, Count * sizeof(KERNINGPAIR), GDITAG_TEXT);
if (!pKP)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
RtlCopyMemory(krnpair, pKP, Count * sizeof(KERNINGPAIR));
- ExFreePoolWithTag(pKP,TAG_GDITEXT);
+ ExFreePoolWithTag(pKP,GDITAG_TEXT);
}
return Count;
}
hFont = pdcattr->hlfntNew;
TextObj = RealizeFontInit(hFont);
-
+
if ( TextObj == NULL)
{
EngSetLastError(ERROR_INVALID_HANDLE);
if (Size && pgs)
{
- pgsSafe = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ pgsSafe = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (!pgsSafe)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
Size = ftGetFontUnicodeRanges( FontGdi, pgsSafe);
if (Size)
- {
+ {
_SEH2_TRY
{
ProbeForWrite(pgs, Size, 1);
if (!NT_SUCCESS(Status)) Size = 0;
}
- ExFreePoolWithTag(pgsSafe, TAG_GDITEXT);
+ ExFreePoolWithTag(pgsSafe, GDITAG_TEXT);
}
Exit:
TEXTOBJ_UnlockText(TextObj);
if (UnsafeBuf && cjBuf)
{
- pvBuf = ExAllocatePoolWithTag(PagedPool, cjBuf, TAG_GDITEXT);
+ pvBuf = ExAllocatePoolWithTag(PagedPool, cjBuf, GDITAG_TEXT);
if (!pvBuf)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
}
_SEH2_END
- ExFreePoolWithTag(pvBuf, TAG_GDITEXT);
+ ExFreePoolWithTag(pvBuf, GDITAG_TEXT);
}
if (pgm)
EngSetLastError(ERROR_INSUFFICIENT_BUFFER);
return 0;
}
- pKP = ExAllocatePoolWithTag(PagedPool, Count * sizeof(KERNINGPAIR), TAG_GDITEXT);
+ pKP = ExAllocatePoolWithTag(PagedPool, Count * sizeof(KERNINGPAIR), GDITAG_TEXT);
if (!pKP)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
{
EngSetLastError(ERROR_INVALID_PARAMETER);
Count = 0;
- }
- ExFreePoolWithTag(pKP,TAG_GDITEXT);
+ }
+ ExFreePoolWithTag(pKP,GDITAG_TEXT);
}
return Count;
}
EngSetLastError(ERROR_INSUFFICIENT_BUFFER);
return 0;
}
- potm = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ potm = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (!potm)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
Size = 0;
}
}
- ExFreePoolWithTag(potm,TAG_GDITEXT);
+ ExFreePoolWithTag(potm,GDITAG_TEXT);
return Size;
}
return 0;
}
- FontGDI = EngAllocMem(FL_ZERO_MEMORY, sizeof(FONTGDI), TAG_FONTOBJ);
+ FontGDI = EngAllocMem(FL_ZERO_MEMORY, sizeof(FONTGDI), GDITAG_RFONT);
if (FontGDI == NULL)
{
FT_Done_Face(Face);
return 0;
}
- FontGDI->Filename = ExAllocatePoolWithTag(PagedPool, FileName->Length + sizeof(WCHAR), TAG_PFF);
+ FontGDI->Filename = ExAllocatePoolWithTag(PagedPool, FileName->Length + sizeof(WCHAR), GDITAG_PFF);
if (FontGDI->Filename == NULL)
{
EngFreeMem(FontGDI);
RtlZeroMemory(Info, sizeof(FONTFAMILYINFO));
Size = IntGetOutlineTextMetrics(FontGDI, 0, NULL);
- Otm = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ Otm = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (!Otm)
{
return;
if (0 == (TM->tmPitchAndFamily & TMPF_VECTOR))
Info->FontType |= RASTER_FONTTYPE;
- ExFreePoolWithTag(Otm, TAG_GDITEXT);
+ ExFreePoolWithTag(Otm, GDITAG_TEXT);
wcsncpy(Info->EnumLogFontEx.elfLogFont.lfFaceName, FaceName, LF_FACESIZE);
wcsncpy(Info->EnumLogFontEx.elfFullName, FaceName, LF_FULLFACESIZE);
orientation = FT_IS_SCALABLE(ft_face) ? TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfOrientation: 0;
Size = IntGetOutlineTextMetrics(FontGDI, 0, NULL);
- potm = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ potm = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (!potm)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
{
DPRINT1("WARNING: Failed to load and render glyph! [index: %u]\n", glyph_index);
IntUnLockFreeType;
- if (potm) ExFreePoolWithTag(potm, TAG_GDITEXT);
+ if (potm) ExFreePoolWithTag(potm, GDITAG_TEXT);
return GDI_ERROR;
}
IntUnLockFreeType;
needsTransform = TRUE;
}
- if (potm) ExFreePoolWithTag(potm, TAG_GDITEXT); /* It looks like we are finished with potm ATM.*/
+ if (potm) ExFreePoolWithTag(potm, GDITAG_TEXT); /* It looks like we are finished with potm ATM.*/
if (!needsTransform)
{
}
Size = IntGetOutlineTextMetrics(FontGDI, 0, NULL);
- Otm = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ Otm = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (NULL == Otm)
{
return Score;
}
/* Allocate space for a safe copy */
- Info = ExAllocatePoolWithTag(PagedPool, Size * sizeof(FONTFAMILYINFO), TAG_GDITEXT);
+ Info = ExAllocatePoolWithTag(PagedPool, Size * sizeof(FONTFAMILYINFO), GDITAG_TEXT);
if (NULL == Info)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
if (BufSize > STACK_TEXT_BUFFER_SIZE)
{
/* It's not, allocate a temp buffer */
- Buffer = ExAllocatePoolWithTag(PagedPool, BufSize, TAG_GDITEXT);
+ Buffer = ExAllocatePoolWithTag(PagedPool, BufSize, GDITAG_TEXT);
if (!Buffer)
{
return FALSE;
/* If we allocated a buffer, free it */
if (Buffer != LocalBuffer)
{
- ExFreePoolWithTag(Buffer, TAG_GDITEXT);
+ ExFreePoolWithTag(Buffer, GDITAG_TEXT);
}
return Result;
}
BufferSize = Count * sizeof(ABC); // Same size!
- SafeBuff = ExAllocatePoolWithTag(PagedPool, BufferSize, TAG_GDITEXT);
+ SafeBuff = ExAllocatePoolWithTag(PagedPool, BufferSize, GDITAG_TEXT);
if (!fl) SafeBuffF = (LPABCFLOAT) SafeBuff;
if (SafeBuff == NULL)
{
}
BufferSize = Count * sizeof(INT); // Same size!
- SafeBuff = ExAllocatePoolWithTag(PagedPool, BufferSize, TAG_GDITEXT);
+ SafeBuff = ExAllocatePoolWithTag(PagedPool, BufferSize, GDITAG_TEXT);
if (!fl) SafeBuffF = (PFLOAT) SafeBuff;
if (SafeBuff == NULL)
{
FontGDI = ObjToGDI(TextObj->Font, FONT);
TEXTOBJ_UnlockText(TextObj);
- Buffer = ExAllocatePoolWithTag(PagedPool, cwc*sizeof(WORD), TAG_GDITEXT);
+ Buffer = ExAllocatePoolWithTag(PagedPool, cwc*sizeof(WORD), GDITAG_TEXT);
if (!Buffer)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
else
{
Size = IntGetOutlineTextMetrics(FontGDI, 0, NULL);
- potm = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ potm = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (!potm)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
RtlCopyMemory( pgi, Buffer, cwc*sizeof(WORD));
ErrorRet:
- if (Buffer) ExFreePoolWithTag(Buffer, TAG_GDITEXT);
+ if (Buffer) ExFreePoolWithTag(Buffer, GDITAG_TEXT);
return cwc;
}
FontGDI = ObjToGDI(TextObj->Font, FONT);
TEXTOBJ_UnlockText(TextObj);
- Buffer = ExAllocatePoolWithTag(PagedPool, cwc*sizeof(WORD), TAG_GDITEXT);
+ Buffer = ExAllocatePoolWithTag(PagedPool, cwc*sizeof(WORD), GDITAG_TEXT);
if (!Buffer)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
else
{
Size = IntGetOutlineTextMetrics(FontGDI, 0, NULL);
- potm = ExAllocatePoolWithTag(PagedPool, Size, TAG_GDITEXT);
+ potm = ExAllocatePoolWithTag(PagedPool, Size, GDITAG_TEXT);
if (!potm)
{
Status = ERROR_NOT_ENOUGH_MEMORY;
_SEH2_END;
ErrorRet:
- ExFreePoolWithTag(Buffer, TAG_GDITEXT);
+ ExFreePoolWithTag(Buffer, GDITAG_TEXT);
if (NT_SUCCESS(Status)) return cwc;
EngSetLastError(Status);
return GDI_ERROR;
return FALSE;
}
- SafeRamp = ExAllocatePoolWithTag(PagedPool, sizeof(GAMMARAMP), TAG_GDIICM);
+ SafeRamp = ExAllocatePoolWithTag(PagedPool, sizeof(GAMMARAMP), GDITAG_ICM);
if (!SafeRamp)
{
DC_UnlockDc(dc);
_SEH2_END;
DC_UnlockDc(dc);
- ExFreePoolWithTag(SafeRamp, TAG_GDIICM);
+ ExFreePoolWithTag(SafeRamp, GDITAG_ICM);
if (!NT_SUCCESS(Status))
{
if (pdcattr->hColorSpace == hColorSpace)
{
DC_UnlockDc(pDC);
- return TRUE;
+ return TRUE;
}
-
+
pCS = COLORSPACEOBJ_LockCS(hColorSpace);
if (!pCS)
{
EngSetLastError(ERROR_INVALID_HANDLE);
return FALSE;
}
-
+
if (pDC->dclevel.pColorSpace)
{
GDIOBJ_ShareUnlockObjByPtr((POBJ) pDC->dclevel.pColorSpace);
// This way we have a record of the change in memory.
if (!pGDev->pvGammaRamp && !(pGDev->flFlags & PDEV_GAMMARAMP_TABLE))
{ // If the above is true and we have nothing allocated, create it.
- pGDev->pvGammaRamp = ExAllocatePoolWithTag(PagedPool, sizeof(GAMMARAMP), TAG_GDIICM);
+ pGDev->pvGammaRamp = ExAllocatePoolWithTag(PagedPool, sizeof(GAMMARAMP), GDITAG_ICM);
pGDev->flFlags |= PDEV_GAMMARAMP_TABLE;
}
if (pGDev->pvGammaRamp)
return FALSE;
}
- SafeRamp = ExAllocatePoolWithTag(PagedPool, sizeof(GAMMARAMP), TAG_GDIICM);
+ SafeRamp = ExAllocatePoolWithTag(PagedPool, sizeof(GAMMARAMP), GDITAG_ICM);
if (!SafeRamp)
{
DC_UnlockDc(dc);
if (!NT_SUCCESS(Status))
{
DC_UnlockDc(dc);
- ExFreePoolWithTag(SafeRamp, TAG_GDIICM);
+ ExFreePoolWithTag(SafeRamp, GDITAG_ICM);
SetLastNtError(Status);
return FALSE;
}
Ret = IntSetDeviceGammaRamp((HDEV)dc->ppdev, SafeRamp, TRUE);
DC_UnlockDc(dc);
- ExFreePoolWithTag(SafeRamp, TAG_GDIICM);
+ ExFreePoolWithTag(SafeRamp, GDITAG_ICM);
return Ret;
}
if (!(pbrLine->flAttrs & GDIBRUSH_IS_NULL))
{
- Points = EngAllocMem(0, Count * sizeof(POINT), TAG_COORD);
+ Points = EngAllocMem(0, Count * sizeof(POINT), GDITAG_TEMP);
if (Points != NULL)
{
psurf = dc->dclevel.pSurface;
if (cbCount < cbRetCount) return 0;
- if ( (pbrushPen->ulPenStyle & PS_STYLE_MASK) == PS_NULL &&
+ if ( (pbrushPen->ulPenStyle & PS_STYLE_MASK) == PS_NULL &&
cbCount == sizeof(EXTLOGPEN))
{
- pExtLogPen = (PEXTLOGPEN)pBuffer;
+ pExtLogPen = (PEXTLOGPEN)pBuffer;
pExtLogPen->elpPenStyle = pbrushPen->ulPenStyle;
pExtLogPen->elpWidth = 0;
pExtLogPen->elpBrushStyle = pbrushPen->ulStyle;
if (dwStyleCount > 0)
{
- pSafeStyle = ExAllocatePoolWithTag(NonPagedPool, dwStyleCount * sizeof(DWORD), TAG_PENSTYLES);
+ pSafeStyle = ExAllocatePoolWithTag(NonPagedPool, dwStyleCount * sizeof(DWORD), GDITAG_PENSTYLE);
if (!pSafeStyle)
{
SetLastNtError(ERROR_NOT_ENOUGH_MEMORY);
if(!NT_SUCCESS(Status))
{
SetLastNtError(Status);
- ExFreePoolWithTag(pSafeStyle, TAG_PENSTYLES);
+ ExFreePoolWithTag(pSafeStyle, GDITAG_PENSTYLE);
return 0;
}
}
if(!NT_SUCCESS(Status))
{
SetLastNtError(Status);
- if (pSafeStyle) ExFreePoolWithTag(pSafeStyle, TAG_PENSTYLES);
+ if (pSafeStyle) ExFreePoolWithTag(pSafeStyle, GDITAG_PENSTYLE);
return 0;
}
}
if (!hPen && pSafeStyle)
{
- ExFreePoolWithTag(pSafeStyle, TAG_PENSTYLES);
+ ExFreePoolWithTag(pSafeStyle, GDITAG_PENSTYLE);
}
return hPen;
}
return -1;
}
- SafeInData = ExAllocatePoolWithTag ( PagedPool, InSize, TAG_PRINT );
+ SafeInData = ExAllocatePoolWithTag ( PagedPool, InSize, GDITAG_TEMP );
if ( !SafeInData )
{
DC_UnlockDc(pDC);
if ( !NT_SUCCESS(Status) )
{
- ExFreePoolWithTag ( SafeInData, TAG_PRINT );
+ ExFreePoolWithTag ( SafeInData, GDITAG_TEMP );
DC_UnlockDc(pDC);
SetLastNtError(Status);
return -1;
goto freeout;
}
- SafeOutData = ExAllocatePoolWithTag ( PagedPool, OutSize, TAG_PRINT );
+ SafeOutData = ExAllocatePoolWithTag ( PagedPool, OutSize, GDITAG_TEMP );
if ( !SafeOutData )
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
freeout:
if ( SafeInData )
- ExFreePoolWithTag ( SafeInData, TAG_PRINT );
+ ExFreePoolWithTag ( SafeInData, GDITAG_TEMP );
DC_UnlockDc(pDC);
return -1;
}
DC_UnlockDc(pDC);
if ( SafeInData )
- ExFreePoolWithTag ( SafeInData ,TAG_PRINT );
+ ExFreePoolWithTag ( SafeInData ,GDITAG_TEMP );
if ( SafeOutData )
{
}
_SEH2_END;
- ExFreePoolWithTag ( SafeOutData, TAG_PRINT );
+ ExFreePoolWithTag ( SafeOutData, GDITAG_TEMP );
if ( !NT_SUCCESS(Status) )
{
SetLastNtError(Status);
* LICENSE: GPL - See COPYING in the top level directory
* FILE: subsystems/win32/win32k/objects/text.c
* PURPOSE: Text/Font
- * PROGRAMMER:
+ * PROGRAMMER:
*/
-
+
/** Includes ******************************************************************/
#include <win32k.h>
DC_UnlockDc(pdc);
return Result;
-}
+}
/*
if ( !Count )
{
- if ( Fit ) Fit = 0;
+ if ( Fit ) Fit = 0;
return TRUE;
}
-
+
pdc = DC_LockDc(hDC);
if (NULL == pdc)
{
return TRUE;
}
- String = ExAllocatePoolWithTag(PagedPool, Count * sizeof(WCHAR), TAG_GDITEXT);
+ String = ExAllocatePoolWithTag(PagedPool, Count * sizeof(WCHAR), GDITAG_TEXT);
if (NULL == String)
{
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
if (NULL != UnsafeDx)
{
- Dx = ExAllocatePoolWithTag(PagedPool, Count * sizeof(INT), TAG_GDITEXT);
+ Dx = ExAllocatePoolWithTag(PagedPool, Count * sizeof(INT), GDITAG_TEXT);
if (NULL == Dx)
{
- ExFreePoolWithTag(String, TAG_GDITEXT);
+ ExFreePoolWithTag(String, GDITAG_TEXT);
EngSetLastError(ERROR_NOT_ENOUGH_MEMORY);
return FALSE;
}
{
if (NULL != Dx)
{
- ExFreePoolWithTag(Dx, TAG_GDITEXT);
+ ExFreePoolWithTag(Dx, GDITAG_TEXT);
}
- ExFreePoolWithTag(String, TAG_GDITEXT);
+ ExFreePoolWithTag(String, GDITAG_TEXT);
SetLastNtError(Status);
return FALSE;
}
{
if (NULL != Dx)
{
- ExFreePoolWithTag(Dx, TAG_GDITEXT);
+ ExFreePoolWithTag(Dx, GDITAG_TEXT);
}
- ExFreePoolWithTag(String, TAG_GDITEXT);
+ ExFreePoolWithTag(String, GDITAG_TEXT);
EngSetLastError(ERROR_INVALID_HANDLE);
return FALSE;
}
Result = FALSE;
DC_UnlockDc(dc);
- ExFreePoolWithTag(String, TAG_GDITEXT);
+ ExFreePoolWithTag(String, GDITAG_TEXT);
if (! Result)
{
if (NULL != Dx)
{
- ExFreePoolWithTag(Dx, TAG_GDITEXT);
+ ExFreePoolWithTag(Dx, GDITAG_TEXT);
}
return FALSE;
}
{
if (NULL != Dx)
{
- ExFreePoolWithTag(Dx, TAG_GDITEXT);
+ ExFreePoolWithTag(Dx, GDITAG_TEXT);
}
SetLastNtError(Status);
return FALSE;
{
if (NULL != Dx)
{
- ExFreePoolWithTag(Dx, TAG_GDITEXT);
+ ExFreePoolWithTag(Dx, GDITAG_TEXT);
}
SetLastNtError(Status);
return FALSE;
}
if (NULL != Dx)
{
- ExFreePoolWithTag(Dx,TAG_GDITEXT);
+ ExFreePoolWithTag(Dx,GDITAG_TEXT);
}
Status = MmCopyToCaller(UnsafeSize, &Size, sizeof(SIZE));
}
else
{
- ret = fLen;
+ ret = fLen;
}
TEXTOBJ_UnlockText(TextObj);