Do not allocate any USER data on the system heap.

This commit is contained in:
Alexandre Julliard 2001-02-23 01:13:42 +00:00
parent 92b23186ae
commit da2892c0fb
12 changed files with 150 additions and 176 deletions

View File

@ -640,7 +640,7 @@ static void MENU_FreeItemData( MENUITEM* item )
{
/* delete text */
if (IS_STRING_ITEM(item->fType) && item->text)
HeapFree( SystemHeap, 0, item->text );
HeapFree( GetProcessHeap(), 0, item->text );
}
/***********************************************************************
@ -1869,7 +1869,7 @@ static BOOL MENU_SetItemData( MENUITEM *item, UINT flags, UINT id,
flags |= MF_HELP;
str++;
}
if (!(text = HEAP_strdupW( SystemHeap, 0, str ))) return FALSE;
if (!(text = HEAP_strdupW( GetProcessHeap(), 0, str ))) return FALSE;
item->text = text;
}
}
@ -1914,7 +1914,7 @@ static BOOL MENU_SetItemData( MENUITEM *item, UINT flags, UINT id,
/* Don't call SetRectEmpty here! */
if (prevText) HeapFree( SystemHeap, 0, prevText );
if (prevText) HeapFree( GetProcessHeap(), 0, prevText );
debug_print_menuitem("MENU_SetItemData to : ", item, "");
return TRUE;
@ -1950,7 +1950,7 @@ static MENUITEM *MENU_InsertItem( HMENU hMenu, UINT pos, UINT flags )
/* Create new items array */
newItems = HeapAlloc( SystemHeap, 0, sizeof(MENUITEM) * (menu->nItems+1) );
newItems = HeapAlloc( GetProcessHeap(), 0, sizeof(MENUITEM) * (menu->nItems+1) );
if (!newItems)
{
WARN("allocation failed\n" );
@ -1962,7 +1962,7 @@ static MENUITEM *MENU_InsertItem( HMENU hMenu, UINT pos, UINT flags )
if (pos > 0) memcpy( newItems, menu->items, pos * sizeof(MENUITEM) );
if (pos < menu->nItems) memcpy( &newItems[pos+1], &menu->items[pos],
(menu->nItems-pos)*sizeof(MENUITEM) );
HeapFree( SystemHeap, 0, menu->items );
HeapFree( GetProcessHeap(), 0, menu->items );
}
menu->items = newItems;
menu->nItems++;
@ -2046,14 +2046,8 @@ static LPCSTR MENUEX_ParseResource( LPCSTR res, HMENU hMenu)
/* Align the following fields on a dword boundary. */
res += (~((int)res - 1)) & 3;
/* FIXME: This is inefficient and cannot be optimised away by gcc. */
{
LPSTR newstr = HEAP_strdupWtoA(GetProcessHeap(),
0, mii.dwTypeData);
TRACE("Menu item: [%08x,%08x,%04x,%04x,%s]\n",
mii.fType, mii.fState, mii.wID, resinfo, newstr);
HeapFree( GetProcessHeap(), 0, newstr );
}
TRACE("Menu item: [%08x,%08x,%04x,%04x,%s]\n",
mii.fType, mii.fState, mii.wID, resinfo, debugstr_w(mii.dwTypeData));
if (resinfo & 1) { /* Pop-up? */
/* DWORD helpid = GET_DWORD(res); FIXME: use this. */
@ -3720,7 +3714,7 @@ BOOL WINAPI RemoveMenu( HMENU hMenu, UINT nPos, UINT wFlags )
if (--menu->nItems == 0)
{
HeapFree( SystemHeap, 0, menu->items );
HeapFree( GetProcessHeap(), 0, menu->items );
menu->items = NULL;
}
else
@ -3731,7 +3725,7 @@ BOOL WINAPI RemoveMenu( HMENU hMenu, UINT nPos, UINT wFlags )
item++;
nPos++;
}
menu->items = HeapReAlloc( SystemHeap, 0, menu->items,
menu->items = HeapReAlloc( GetProcessHeap(), 0, menu->items,
menu->nItems * sizeof(MENUITEM) );
}
return TRUE;
@ -3960,7 +3954,7 @@ BOOL WINAPI DestroyMenu( HMENU hMenu )
if (item->fType & MF_POPUP) DestroyMenu(item->hSubMenu);
MENU_FreeItemData( item );
}
HeapFree( SystemHeap, 0, lppop->items );
HeapFree( GetProcessHeap(), 0, lppop->items );
}
USER_HEAP_FREE( hMenu );
MENU_ReleaseTopPopupWnd();
@ -4500,7 +4494,7 @@ static BOOL SetMenuItemInfo_common(MENUITEM * menu,
if (lpmii->fMask & MIIM_TYPE ) {
/* Get rid of old string. */
if ( IS_STRING_ITEM(menu->fType) && menu->text) {
HeapFree(SystemHeap, 0, menu->text);
HeapFree(GetProcessHeap(), 0, menu->text);
menu->text = NULL;
}
@ -4512,16 +4506,16 @@ static BOOL SetMenuItemInfo_common(MENUITEM * menu,
if (IS_STRING_ITEM(menu->fType) && menu->text) {
if (unicode)
menu->text = HEAP_strdupW(SystemHeap, 0, lpmii->dwTypeData);
menu->text = HEAP_strdupW(GetProcessHeap(), 0, lpmii->dwTypeData);
else
menu->text = HEAP_strdupAtoW(SystemHeap, 0, (LPSTR)lpmii->dwTypeData);
menu->text = HEAP_strdupAtoW(GetProcessHeap(), 0, (LPSTR)lpmii->dwTypeData);
}
}
if (lpmii->fMask & MIIM_FTYPE ) {
/* free the string when the type is changing */
if ( (!IS_STRING_ITEM(lpmii->fType)) && IS_STRING_ITEM(menu->fType) && menu->text) {
HeapFree(SystemHeap, 0, menu->text);
HeapFree(GetProcessHeap(), 0, menu->text);
menu->text = NULL;
}
menu->fType &= ~MENU_ITEM_TYPE(menu->fType);
@ -4531,11 +4525,11 @@ static BOOL SetMenuItemInfo_common(MENUITEM * menu,
if (lpmii->fMask & MIIM_STRING ) {
/* free the string when used */
if ( IS_STRING_ITEM(menu->fType) && menu->text) {
HeapFree(SystemHeap, 0, menu->text);
HeapFree(GetProcessHeap(), 0, menu->text);
if (unicode)
menu->text = HEAP_strdupW(SystemHeap, 0, lpmii->dwTypeData);
menu->text = HEAP_strdupW(GetProcessHeap(), 0, lpmii->dwTypeData);
else
menu->text = HEAP_strdupAtoW(SystemHeap, 0, (LPSTR) lpmii->dwTypeData);
menu->text = HEAP_strdupAtoW(GetProcessHeap(), 0, (LPSTR) lpmii->dwTypeData);
}
}

View File

@ -9,7 +9,6 @@
#include "wingdi.h"
#include "wine/winuser16.h"
#include "controls.h"
#include "heap.h"
#include "win.h"
#include "debugtools.h"
#include "user.h"
@ -162,7 +161,7 @@ static SCROLLBAR_INFO *SCROLL_GetPtrScrollInfo( WND* wndPtr, INT nBar )
if (!infoPtr) /* Create the info structure if needed */
{
if ((infoPtr = HeapAlloc( SystemHeap, 0, sizeof(SCROLLBAR_INFO) )))
if ((infoPtr = HeapAlloc( GetProcessHeap(), 0, sizeof(SCROLLBAR_INFO) )))
{
infoPtr->MinVal = infoPtr->CurVal = infoPtr->Page = 0;
infoPtr->MaxVal = 100;

View File

@ -7,7 +7,6 @@
#include "config.h"
#include "gdi.h"
#include "heap.h"
#include "ttydrv.h"
#include "win.h"
#include "debugtools.h"
@ -52,8 +51,7 @@ WINDOW *TTYDRV_WND_GetCursesWindow(WND *wndPtr)
*/
void TTYDRV_WND_Initialize(WND *wndPtr)
{
TTYDRV_WND_DATA *pWndDriverData =
(TTYDRV_WND_DATA *) HeapAlloc(SystemHeap, 0, sizeof(TTYDRV_WND_DATA));
TTYDRV_WND_DATA *pWndDriverData = HeapAlloc(GetProcessHeap(), 0, sizeof(TTYDRV_WND_DATA));
TRACE("(%p)\n", wndPtr);
@ -81,7 +79,7 @@ void TTYDRV_WND_Finalize(WND *wndPtr)
ERR("WND destroyed without destroying the associated Curses Windows");
}
HeapFree(SystemHeap, 0, pWndDriverData);
HeapFree(GetProcessHeap(), 0, pWndDriverData);
wndPtr->pDriverData = NULL;
}

View File

@ -174,7 +174,7 @@ static ICONCACHE* CURSORICON_FindCache(HANDLE handle)
*/
static void CURSORICON_AddSharedIcon( HMODULE hModule, HRSRC hRsrc, HRSRC hGroupRsrc, HANDLE handle )
{
ICONCACHE *ptr = HeapAlloc( SystemHeap, 0, sizeof(ICONCACHE) );
ICONCACHE *ptr = HeapAlloc( GetProcessHeap(), 0, sizeof(ICONCACHE) );
if ( !ptr ) return;
ptr->hModule = hModule;
@ -234,7 +234,7 @@ void CURSORICON_FreeModuleIcons( HMODULE hModule )
*ptr = freePtr->next;
GlobalFree16( freePtr->handle );
HeapFree( SystemHeap, 0, freePtr );
HeapFree( GetProcessHeap(), 0, freePtr );
continue;
}
ptr = &(*ptr)->next;

View File

@ -23,7 +23,6 @@
#include "win.h"
#include "gdi.h"
#include "region.h"
#include "heap.h"
#include "user.h"
#include "debugtools.h"
#include "windef.h"
@ -76,10 +75,10 @@ DCE *DCE_AllocDCE( HWND hWnd, DCE_TYPE type )
DCE * dce;
WND* wnd;
if (!(dce = HeapAlloc( SystemHeap, 0, sizeof(DCE) ))) return NULL;
if (!(dce = HeapAlloc( GetProcessHeap(), 0, sizeof(DCE) ))) return NULL;
if (!(dce->hDC = CreateDCA( "DISPLAY", NULL, NULL, NULL )))
{
HeapFree( SystemHeap, 0, dce );
HeapFree( GetProcessHeap(), 0, dce );
return 0;
}
@ -134,7 +133,7 @@ DCE* DCE_FreeDCE( DCE *dce )
DeleteDC( dce->hDC );
if( dce->hClipRgn && !(dce->DCXflags & DCX_KEEPCLIPRGN) )
DeleteObject(dce->hClipRgn);
HeapFree( SystemHeap, 0, dce );
HeapFree( GetProcessHeap(), 0, dce );
WIN_UnlockWnds();

View File

@ -9,7 +9,6 @@
#include "win.h"
#include "user.h"
#include "heap.h"
#include "nonclient.h"
#include "winpos.h"
#include "dce.h"
@ -67,8 +66,8 @@ void DEFWND_SetTextA( WND *wndPtr, LPCSTR text )
if (!text) text = "";
count = MultiByteToWideChar( CP_ACP, 0, text, -1, NULL, 0 );
if (wndPtr->text) HeapFree(SystemHeap, 0, wndPtr->text);
if ((wndPtr->text = HeapAlloc(SystemHeap, 0, count * sizeof(WCHAR))))
if (wndPtr->text) HeapFree(GetProcessHeap(), 0, wndPtr->text);
if ((wndPtr->text = HeapAlloc(GetProcessHeap(), 0, count * sizeof(WCHAR))))
MultiByteToWideChar( CP_ACP, 0, text, -1, wndPtr->text, count );
else
ERR("Not enough memory for window text");
@ -89,8 +88,8 @@ void DEFWND_SetTextW( WND *wndPtr, LPCWSTR text )
if (!text) text = empty_string;
count = strlenW(text) + 1;
if (wndPtr->text) HeapFree(SystemHeap, 0, wndPtr->text);
if ((wndPtr->text = HeapAlloc(SystemHeap, 0, count * sizeof(WCHAR))))
if (wndPtr->text) HeapFree(GetProcessHeap(), 0, wndPtr->text);
if ((wndPtr->text = HeapAlloc(GetProcessHeap(), 0, count * sizeof(WCHAR))))
strcpyW( wndPtr->text, text );
else
ERR("Not enough memory for window text");
@ -379,10 +378,10 @@ static LRESULT DEFWND_DefWinProc( WND *wndPtr, UINT msg, WPARAM wParam,
return NC_HandleNCActivate( wndPtr, wParam );
case WM_NCDESTROY:
if (wndPtr->text) HeapFree( SystemHeap, 0, wndPtr->text );
if (wndPtr->text) HeapFree( GetProcessHeap(), 0, wndPtr->text );
wndPtr->text = NULL;
if (wndPtr->pVScroll) HeapFree( SystemHeap, 0, wndPtr->pVScroll );
if (wndPtr->pHScroll) HeapFree( SystemHeap, 0, wndPtr->pHScroll );
if (wndPtr->pVScroll) HeapFree( GetProcessHeap(), 0, wndPtr->pVScroll );
if (wndPtr->pHScroll) HeapFree( GetProcessHeap(), 0, wndPtr->pHScroll );
wndPtr->pVScroll = wndPtr->pHScroll = NULL;
return 0;

View File

@ -1182,8 +1182,8 @@ static void MDI_UpdateFrameText( WND *frameWnd, HWND hClient,
/* store new "default" title if lpTitle is not NULL */
if (lpTitle)
{
if (ci->frameTitle) HeapFree( SystemHeap, 0, ci->frameTitle );
ci->frameTitle = HEAP_strdupW( SystemHeap, 0, lpTitle );
if (ci->frameTitle) HeapFree( GetProcessHeap(), 0, ci->frameTitle );
ci->frameTitle = HEAP_strdupW( GetProcessHeap(), 0, lpTitle );
}
if (ci->frameTitle)

View File

@ -454,17 +454,17 @@ static DWORD MSG_ProcessKbdMsg( MSG *msg, BOOL remove )
*/
static void MSG_JournalRecordMsg( MSG *msg )
{
EVENTMSG *event = (EVENTMSG *) HeapAlloc(SystemHeap, 0, sizeof(EVENTMSG));
if (!event) return;
event->message = msg->message;
event->time = msg->time;
EVENTMSG event;
event.message = msg->message;
event.time = msg->time;
if ((msg->message >= WM_KEYFIRST) && (msg->message <= WM_KEYLAST))
{
event->paramL = (msg->wParam & 0xFF) | (HIWORD(msg->lParam) << 8);
event->paramH = msg->lParam & 0x7FFF;
event.paramL = (msg->wParam & 0xFF) | (HIWORD(msg->lParam) << 8);
event.paramH = msg->lParam & 0x7FFF;
if (HIWORD(msg->lParam) & 0x0100)
event->paramH |= 0x8000; /* special_key - bit */
HOOK_CallHooksA( WH_JOURNALRECORD, HC_ACTION, 0, (LPARAM)event );
event.paramH |= 0x8000; /* special_key - bit */
HOOK_CallHooksA( WH_JOURNALRECORD, HC_ACTION, 0, (LPARAM)&event );
}
else if ((msg->message >= WM_MOUSEFIRST) && (msg->message <= WM_MOUSELAST))
{
@ -472,20 +472,18 @@ static void MSG_JournalRecordMsg( MSG *msg )
pt.x = SLOWORD(msg->lParam);
pt.y = SHIWORD(msg->lParam);
ClientToScreen( msg->hwnd, &pt );
event->paramL = pt.x;
event->paramH = pt.y;
HOOK_CallHooksA( WH_JOURNALRECORD, HC_ACTION, 0, (LPARAM)event );
event.paramL = pt.x;
event.paramH = pt.y;
HOOK_CallHooksA( WH_JOURNALRECORD, HC_ACTION, 0, (LPARAM)&event );
}
else if ((msg->message >= WM_NCMOUSEFIRST) &&
(msg->message <= WM_NCMOUSELAST))
{
event->paramL = LOWORD(msg->lParam); /* X pos */
event->paramH = HIWORD(msg->lParam); /* Y pos */
event->message += WM_MOUSEMOVE-WM_NCMOUSEMOVE;/* give no info about NC area */
HOOK_CallHooksA( WH_JOURNALRECORD, HC_ACTION, 0, (LPARAM)event );
event.paramL = LOWORD(msg->lParam); /* X pos */
event.paramH = HIWORD(msg->lParam); /* Y pos */
event.message += WM_MOUSEMOVE-WM_NCMOUSEMOVE;/* give no info about NC area */
HOOK_CallHooksA( WH_JOURNALRECORD, HC_ACTION, 0, (LPARAM)&event );
}
HeapFree(SystemHeap, 0, event);
}
/***********************************************************************
@ -495,93 +493,83 @@ static void MSG_JournalRecordMsg( MSG *msg )
*/
static int MSG_JournalPlayBackMsg(void)
{
EVENTMSG *tmpMsg;
long wtime,lParam,wParam;
WORD keyDown,i,result=0;
EVENTMSG tmpMsg;
LPARAM lParam;
WPARAM wParam;
LRESULT wtime;
int keyDown,i;
if ( HOOK_IsHooked( WH_JOURNALPLAYBACK ) )
{
tmpMsg = (EVENTMSG *) HeapAlloc(SystemHeap, 0, sizeof(EVENTMSG));
if (!tmpMsg) return result;
if (!HOOK_IsHooked( WH_JOURNALPLAYBACK )) return 0;
wtime=HOOK_CallHooksA( WH_JOURNALPLAYBACK, HC_GETNEXT, 0,
(LPARAM) tmpMsg );
/* TRACE(msg,"Playback wait time =%ld\n",wtime); */
if (wtime<=0)
{
wtime=0;
if ((tmpMsg->message >= WM_KEYFIRST) && (tmpMsg->message <= WM_KEYLAST))
{
wParam=tmpMsg->paramL & 0xFF;
lParam=MAKELONG(tmpMsg->paramH&0x7ffff,tmpMsg->paramL>>8);
if (tmpMsg->message == WM_KEYDOWN || tmpMsg->message == WM_SYSKEYDOWN)
{
for (keyDown=i=0; i<256 && !keyDown; i++)
if (InputKeyStateTable[i] & 0x80)
keyDown++;
if (!keyDown)
lParam |= 0x40000000;
AsyncKeyStateTable[wParam]=InputKeyStateTable[wParam] |= 0x80;
}
else /* WM_KEYUP, WM_SYSKEYUP */
{
lParam |= 0xC0000000;
AsyncKeyStateTable[wParam]=InputKeyStateTable[wParam] &= ~0x80;
}
if (InputKeyStateTable[VK_MENU] & 0x80)
lParam |= 0x20000000;
if (tmpMsg->paramH & 0x8000) /*special_key bit*/
lParam |= 0x01000000;
hardware_event( tmpMsg->message & 0xffff, LOWORD(wParam), lParam,
0, 0, tmpMsg->time, 0 );
}
else
{
if ((tmpMsg->message>= WM_MOUSEFIRST) && (tmpMsg->message <= WM_MOUSELAST))
wtime=HOOK_CallHooksA( WH_JOURNALPLAYBACK, HC_GETNEXT, 0, (LPARAM)&tmpMsg );
/* TRACE(msg,"Playback wait time =%ld\n",wtime); */
if (wtime<=0)
{
switch (tmpMsg->message)
{
case WM_LBUTTONDOWN:
MouseButtonsStates[0]=AsyncMouseButtonsStates[0]=TRUE;break;
case WM_LBUTTONUP:
MouseButtonsStates[0]=AsyncMouseButtonsStates[0]=FALSE;break;
case WM_MBUTTONDOWN:
MouseButtonsStates[1]=AsyncMouseButtonsStates[1]=TRUE;break;
case WM_MBUTTONUP:
MouseButtonsStates[1]=AsyncMouseButtonsStates[1]=FALSE;break;
case WM_RBUTTONDOWN:
MouseButtonsStates[2]=AsyncMouseButtonsStates[2]=TRUE;break;
case WM_RBUTTONUP:
MouseButtonsStates[2]=AsyncMouseButtonsStates[2]=FALSE;break;
}
AsyncKeyStateTable[VK_LBUTTON]= InputKeyStateTable[VK_LBUTTON] = MouseButtonsStates[0] ? 0x80 : 0;
AsyncKeyStateTable[VK_MBUTTON]= InputKeyStateTable[VK_MBUTTON] = MouseButtonsStates[1] ? 0x80 : 0;
AsyncKeyStateTable[VK_RBUTTON]= InputKeyStateTable[VK_RBUTTON] = MouseButtonsStates[2] ? 0x80 : 0;
SetCursorPos(tmpMsg->paramL,tmpMsg->paramH);
lParam=MAKELONG(tmpMsg->paramL,tmpMsg->paramH);
wParam=0;
if (MouseButtonsStates[0]) wParam |= MK_LBUTTON;
if (MouseButtonsStates[1]) wParam |= MK_MBUTTON;
if (MouseButtonsStates[2]) wParam |= MK_RBUTTON;
hardware_event( tmpMsg->message & 0xffff, LOWORD (wParam), lParam,
tmpMsg->paramL, tmpMsg->paramH, tmpMsg->time, 0 );
wtime=0;
if ((tmpMsg.message >= WM_KEYFIRST) && (tmpMsg.message <= WM_KEYLAST))
{
wParam=tmpMsg.paramL & 0xFF;
lParam=MAKELONG(tmpMsg.paramH&0x7ffff,tmpMsg.paramL>>8);
if (tmpMsg.message == WM_KEYDOWN || tmpMsg.message == WM_SYSKEYDOWN)
{
for (keyDown=i=0; i<256 && !keyDown; i++)
if (InputKeyStateTable[i] & 0x80)
keyDown++;
if (!keyDown)
lParam |= 0x40000000;
AsyncKeyStateTable[wParam]=InputKeyStateTable[wParam] |= 0x80;
}
else /* WM_KEYUP, WM_SYSKEYUP */
{
lParam |= 0xC0000000;
AsyncKeyStateTable[wParam]=InputKeyStateTable[wParam] &= ~0x80;
}
if (InputKeyStateTable[VK_MENU] & 0x80)
lParam |= 0x20000000;
if (tmpMsg.paramH & 0x8000) /*special_key bit*/
lParam |= 0x01000000;
hardware_event( tmpMsg.message, wParam, lParam, 0, 0, tmpMsg.time, 0 );
}
else if ((tmpMsg.message>= WM_MOUSEFIRST) && (tmpMsg.message <= WM_MOUSELAST))
{
switch (tmpMsg.message)
{
case WM_LBUTTONDOWN:
MouseButtonsStates[0]=AsyncMouseButtonsStates[0]=TRUE;break;
case WM_LBUTTONUP:
MouseButtonsStates[0]=AsyncMouseButtonsStates[0]=FALSE;break;
case WM_MBUTTONDOWN:
MouseButtonsStates[1]=AsyncMouseButtonsStates[1]=TRUE;break;
case WM_MBUTTONUP:
MouseButtonsStates[1]=AsyncMouseButtonsStates[1]=FALSE;break;
case WM_RBUTTONDOWN:
MouseButtonsStates[2]=AsyncMouseButtonsStates[2]=TRUE;break;
case WM_RBUTTONUP:
MouseButtonsStates[2]=AsyncMouseButtonsStates[2]=FALSE;break;
}
AsyncKeyStateTable[VK_LBUTTON]= InputKeyStateTable[VK_LBUTTON] = MouseButtonsStates[0] ? 0x80 : 0;
AsyncKeyStateTable[VK_MBUTTON]= InputKeyStateTable[VK_MBUTTON] = MouseButtonsStates[1] ? 0x80 : 0;
AsyncKeyStateTable[VK_RBUTTON]= InputKeyStateTable[VK_RBUTTON] = MouseButtonsStates[2] ? 0x80 : 0;
SetCursorPos(tmpMsg.paramL,tmpMsg.paramH);
lParam=MAKELONG(tmpMsg.paramL,tmpMsg.paramH);
wParam=0;
if (MouseButtonsStates[0]) wParam |= MK_LBUTTON;
if (MouseButtonsStates[1]) wParam |= MK_MBUTTON;
if (MouseButtonsStates[2]) wParam |= MK_RBUTTON;
hardware_event( tmpMsg.message, wParam, lParam,
tmpMsg.paramL, tmpMsg.paramH, tmpMsg.time, 0 );
}
HOOK_CallHooksA( WH_JOURNALPLAYBACK, HC_SKIP, 0, (LPARAM)&tmpMsg);
return 0;
}
}
HOOK_CallHooksA( WH_JOURNALPLAYBACK, HC_SKIP, 0,
(LPARAM) tmpMsg);
}
else
{
else
{
if( tmpMsg.message == WM_QUEUESYNC )
if (HOOK_IsHooked( WH_CBT ))
HOOK_CallHooksA( WH_CBT, HCBT_QS, 0, 0L);
if( tmpMsg->message == WM_QUEUESYNC )
if (HOOK_IsHooked( WH_CBT ))
HOOK_CallHooksA( WH_CBT, HCBT_QS, 0, 0L);
result= QS_MOUSE | QS_KEY; /* ? */
}
HeapFree(SystemHeap, 0, tmpMsg);
}
return result;
return QS_MOUSE | QS_KEY; /* ? */
}
}
/***********************************************************************
@ -808,7 +796,7 @@ static LRESULT MSG_SendMessageInterThread( HQUEUE16 hDestQueue,
return 0;
/* create a SMSG structure to hold SendMessage() parameters */
if (! (smsg = (SMSG *) HeapAlloc( SystemHeap, 0, sizeof(SMSG) )) )
if (! (smsg = (SMSG *) HeapAlloc( GetProcessHeap(), 0, sizeof(SMSG) )) )
return 0;
if (!(queue = QUEUE_Lock( GetFastQueue16() ))) return 0;
@ -908,7 +896,7 @@ got:
EnterCriticalSection( &queue->cSection );
if (smsg->flags & SMSG_RECEIVED)
HeapFree(SystemHeap, 0, smsg);
HeapFree(GetProcessHeap(), 0, smsg);
else
smsg->flags |= SMSG_RECEIVER_CLEANS;
@ -1000,7 +988,7 @@ BOOL WINAPI ReplyMessage( LRESULT result )
if ( smsg->flags & SMSG_RECEIVER_CLEANS )
{
TRACE_(sendmsg)("Receiver cleans up!\n" );
HeapFree( SystemHeap, 0, smsg );
HeapFree( GetProcessHeap(), 0, smsg );
}
if (senderQ) LeaveCriticalSection(&senderQ->cSection);
@ -1366,7 +1354,7 @@ BOOL MSG_InternalGetMessage( int type, MSG *msg, HWND hwnd, HWND hwndOwner,
if (HOOK_IsHooked( WH_SYSMSGFILTER ) || HOOK_IsHooked( WH_MSGFILTER ))
{
MSG *pmsg = HeapAlloc( SystemHeap, 0, sizeof(MSG) );
MSG *pmsg = HeapAlloc( GetProcessHeap(), 0, sizeof(MSG) );
if (pmsg)
{
BOOL ret;
@ -1376,7 +1364,7 @@ BOOL MSG_InternalGetMessage( int type, MSG *msg, HWND hwnd, HWND hwndOwner,
HOOK_CallHooksA( WH_MSGFILTER, code, 0,
(LPARAM) pmsg ));
HeapFree( SystemHeap, 0, pmsg );
HeapFree( GetProcessHeap(), 0, pmsg );
if (ret)
{
/* Message filtered -> remove it from the queue */

View File

@ -135,14 +135,14 @@ BOOL WINAPI SetPropA( HWND hwnd, LPCSTR str, HANDLE handle )
/* We need to create it */
WND *pWnd = WIN_FindWndPtr( hwnd );
if (!pWnd) return FALSE;
if (!(prop = HeapAlloc( SystemHeap, 0, sizeof(*prop) )))
if (!(prop = HeapAlloc( GetProcessHeap(), 0, sizeof(*prop) )))
{
WIN_ReleaseWndPtr(pWnd);
return FALSE;
}
if (!(prop->string = SEGPTR_STRDUP(str)))
{
HeapFree( SystemHeap, 0, prop );
HeapFree( GetProcessHeap(), 0, prop );
WIN_ReleaseWndPtr(pWnd);
return FALSE;
@ -229,7 +229,7 @@ HANDLE WINAPI RemovePropA( HWND hwnd, LPCSTR str )
handle = prop->handle;
*pprop = prop->next;
SEGPTR_FREE(prop->string);
HeapFree( SystemHeap, 0, prop );
HeapFree( GetProcessHeap(), 0, prop );
return handle;
}
@ -264,7 +264,7 @@ void PROPERTY_RemoveWindowProps( WND *pWnd )
{
next = prop->next;
SEGPTR_FREE( prop->string );
HeapFree( SystemHeap, 0, prop );
HeapFree( GetProcessHeap(), 0, prop );
}
pWnd->pProp = NULL;
}

View File

@ -14,7 +14,6 @@
#include "queue.h"
#include "win.h"
#include "hook.h"
#include "heap.h"
#include "thread.h"
#include "debugtools.h"
#include "server.h"
@ -70,7 +69,7 @@ PERQUEUEDATA * PERQDATA_CreateInstance( )
}
/* Allocate PERQUEUEDATA from the system heap */
if (!( pQData = (PERQUEUEDATA *) HeapAlloc( SystemHeap, 0,
if (!( pQData = (PERQUEUEDATA *) HeapAlloc( GetProcessHeap(), 0,
sizeof(PERQUEUEDATA) ) ))
return 0;
@ -139,7 +138,7 @@ ULONG PERQDATA_Release( PERQUEUEDATA *pQData )
pQDataWin16 = 0;
/* Free the PERQUEUEDATA instance */
HeapFree( SystemHeap, 0, pQData );
HeapFree( GetProcessHeap(), 0, pQData );
return 0;
}
@ -309,16 +308,16 @@ MESSAGEQUEUE *QUEUE_Lock( HQUEUE16 hQueue )
{
MESSAGEQUEUE *queue;
HeapLock( SystemHeap ); /* FIXME: a bit overkill */
HeapLock( GetProcessHeap() ); /* FIXME: a bit overkill */
queue = GlobalLock16( hQueue );
if ( !queue || (queue->magic != QUEUE_MAGIC) )
{
HeapUnlock( SystemHeap );
HeapUnlock( GetProcessHeap() );
return NULL;
}
queue->lockCount++;
HeapUnlock( SystemHeap );
HeapUnlock( GetProcessHeap() );
return queue;
}
@ -333,7 +332,7 @@ void QUEUE_Unlock( MESSAGEQUEUE *queue )
{
if (queue)
{
HeapLock( SystemHeap ); /* FIXME: a bit overkill */
HeapLock( GetProcessHeap() ); /* FIXME: a bit overkill */
if ( --queue->lockCount == 0 )
{
@ -343,7 +342,7 @@ void QUEUE_Unlock( MESSAGEQUEUE *queue )
GlobalFree16( queue->self );
}
HeapUnlock( SystemHeap );
HeapUnlock( GetProcessHeap() );
}
}
@ -551,7 +550,7 @@ BOOL QUEUE_DeleteMsgQueue( HQUEUE16 hQueue )
/* flush sent messages */
QUEUE_FlushMessages( msgQueue );
HeapLock( SystemHeap ); /* FIXME: a bit overkill */
HeapLock( GetProcessHeap() ); /* FIXME: a bit overkill */
/* Release per queue data if present */
if ( msgQueue->pQData )
@ -579,7 +578,7 @@ BOOL QUEUE_DeleteMsgQueue( HQUEUE16 hQueue )
if (pPrev && *pPrev) *pPrev = msgQueue->next;
msgQueue->self = 0;
HeapUnlock( SystemHeap );
HeapUnlock( GetProcessHeap() );
/* free up resource used by MESSAGEQUEUE structure */
msgQueue->lockCount--;
@ -1030,7 +1029,7 @@ BOOL QUEUE_AddMsg( HQUEUE16 hQueue, int type, MSG *msg, DWORD extraInfo )
if (!(msgQueue = QUEUE_Lock( hQueue ))) return FALSE;
/* allocate new message in global heap for now */
if (!(qmsg = (QMSG *) HeapAlloc( SystemHeap, 0, sizeof(QMSG) ) ))
if (!(qmsg = (QMSG *) HeapAlloc( GetProcessHeap(), 0, sizeof(QMSG) ) ))
{
QUEUE_Unlock( msgQueue );
return 0;
@ -1130,7 +1129,7 @@ void QUEUE_RemoveMsg( MESSAGEQUEUE * msgQueue, QMSG *qmsg )
msgQueue->lastMsg = qmsg->prevMsg;
/* deallocate the memory for the message */
HeapFree( SystemHeap, 0, qmsg );
HeapFree( GetProcessHeap(), 0, qmsg );
msgQueue->msgCount--;
if (!msgQueue->msgCount) msgQueue->wakeBits &= ~QS_POSTMESSAGE;
@ -1246,7 +1245,7 @@ void hardware_event( UINT message, WPARAM wParam, LPARAM lParam,
/* Don't merge allocate a new msg in the global heap */
if (!(qmsg = (QMSG *) HeapAlloc( SystemHeap, 0, sizeof(QMSG) ) ))
if (!(qmsg = (QMSG *) HeapAlloc( GetProcessHeap(), 0, sizeof(QMSG) ) ))
{
LeaveCriticalSection( &sysMsgQueue->cSection );
return;
@ -1494,13 +1493,13 @@ HQUEUE16 WINAPI InitThreadInput16( WORD unknown, WORD flags )
queuePtr = QUEUE_Lock( hQueue );
queuePtr->teb = NtCurrentTeb();
HeapLock( SystemHeap ); /* FIXME: a bit overkill */
HeapLock( GetProcessHeap() ); /* FIXME: a bit overkill */
SetThreadQueue16( 0, hQueue );
teb->queue = hQueue;
queuePtr->next = hFirstQueue;
hFirstQueue = hQueue;
HeapUnlock( SystemHeap );
HeapUnlock( GetProcessHeap() );
QUEUE_Unlock( queuePtr );
}

View File

@ -109,7 +109,7 @@ void WINPOS_CheckInternalPos( WND* wndPtr )
{
if( IsWindow(lpPos->hwndIconTitle) )
DestroyWindow( lpPos->hwndIconTitle );
HeapFree( SystemHeap, 0, lpPos );
HeapFree( GetProcessHeap(), 0, lpPos );
}
QUEUE_Unlock( pMsgQ );
@ -1087,7 +1087,7 @@ static LPINTERNALPOS WINPOS_InitInternalPos( WND* wnd, POINT pt,
/* this happens when the window is minimized/maximized
* for the first time (rectWindow is not adjusted yet) */
lpPos = HeapAlloc( SystemHeap, 0, sizeof(INTERNALPOS) );
lpPos = HeapAlloc( GetProcessHeap(), 0, sizeof(INTERNALPOS) );
if( !lpPos ) return NULL;
SetPropA( wnd->hwndSelf, atomInternalPos, (HANDLE)lpPos );

View File

@ -22,7 +22,6 @@
#include "gdi.h"
#include "options.h"
#include "message.h"
#include "heap.h"
#include "win.h"
#include "windef.h"
#include "x11drv.h"
@ -137,8 +136,7 @@ static BOOL X11DRV_WND_IsZeroSizeWnd(WND *wndPtr)
*/
void X11DRV_WND_Initialize(WND *wndPtr)
{
X11DRV_WND_DATA *pWndDriverData =
(X11DRV_WND_DATA *) HeapAlloc(SystemHeap, 0, sizeof(X11DRV_WND_DATA));
X11DRV_WND_DATA *pWndDriverData = HeapAlloc(GetProcessHeap(), 0, sizeof(X11DRV_WND_DATA));
wndPtr->pDriverData = (void *) pWndDriverData;
@ -165,7 +163,7 @@ void X11DRV_WND_Finalize(WND *wndPtr)
pWndDriverData->window
);
}
HeapFree(SystemHeap, 0, wndPtr->pDriverData);
HeapFree(GetProcessHeap(), 0, wndPtr->pDriverData);
wndPtr->pDriverData = NULL;
}