Make all GDI object cleanup functions return VOID instead of BOOL.
CORE-6870 #resolve

svn path=/trunk/; revision=63408
This commit is contained in:
Timo Kreuzer 2014-05-22 11:45:53 +00:00
parent c52bfa77a8
commit 02851fb0e2
16 changed files with 93 additions and 102 deletions

View file

@ -19,8 +19,9 @@
/*!
* \brief DRIVEROBJ cleanup function
*/
BOOL NTAPI
DRIVEROBJ_Cleanup(PVOID pObject)
VOID
NTAPI
DRIVEROBJ_vCleanup(PVOID pObject)
{
PEDRIVEROBJ pedo = pObject;
FREEOBJPROC pFreeProc;
@ -28,10 +29,8 @@ DRIVEROBJ_Cleanup(PVOID pObject)
pFreeProc = pedo->drvobj.pFreeProc;
if (pFreeProc)
{
return pFreeProc(pedo->drvobj.pvObj);
NT_VERIFY(pFreeProc(pedo->drvobj.pvObj));
}
return TRUE;
}
/** Public interface **********************************************************/

View file

@ -11,7 +11,7 @@ typedef struct _EDRIVEROBJ
typedef DRIVEROBJ *PDRIVEROBJ;
/* Cleanup function */
BOOL NTAPI DRIVEROBJ_Cleanup(PVOID pObject);
VOID NTAPI DRIVEROBJ_vCleanup(PVOID pObject);
#define DRIVEROBJ_AllocObjectWithHandle() ((PEDRIVEROBJ)GDIOBJ_AllocObjWithHandle(GDI_OBJECT_TYPE_DRIVEROBJ, sizeof(EDRIVEROBJ)))

View file

@ -62,9 +62,9 @@ BitmapFormat(ULONG cBits, ULONG iCompression)
}
}
BOOL
VOID
NTAPI
SURFACE_Cleanup(PVOID ObjectBody)
SURFACE_vCleanup(PVOID ObjectBody)
{
PSURFACE psurf = (PSURFACE)ObjectBody;
PVOID pvBits = psurf->SurfObj.pvBits;
@ -108,8 +108,6 @@ SURFACE_Cleanup(PVOID ObjectBody)
{
PALETTE_ShareUnlockPalette(psurf->ppal);
}
return TRUE;
}

View file

@ -111,9 +111,9 @@ ULONG
FASTCALL
BitmapFormat(ULONG cBits, ULONG iCompression);
BOOL
VOID
NTAPI
SURFACE_Cleanup(PVOID ObjectBody);
SURFACE_vCleanup(PVOID ObjectBody);
PSURFACE
NTAPI

View file

@ -114,9 +114,9 @@ BRUSH_vFreeBrushAttr(PBRUSH pbr)
pbr->pBrushAttr = &pbr->BrushAttr;
}
BOOL
VOID
NTAPI
BRUSH_Cleanup(PVOID ObjectBody)
BRUSH_vCleanup(PVOID ObjectBody)
{
PBRUSH pbrush = (PBRUSH)ObjectBody;
if (pbrush->hbmPattern)
@ -136,8 +136,6 @@ BRUSH_Cleanup(PVOID ObjectBody)
{
ExFreePool(pbrush->pStyle);
}
return TRUE;
}
INT

View file

@ -94,7 +94,7 @@ typedef struct _EBRUSHOBJ
#define BRUSH_ShareUnlockBrush(pBrush) GDIOBJ_vDereferenceObject((POBJ)pBrush)
INT FASTCALL BRUSH_GetObject (PBRUSH GdiObject, INT Count, LPLOGBRUSH Buffer);
BOOL NTAPI BRUSH_Cleanup(PVOID ObjectBody);
VOID NTAPI BRUSH_vCleanup(PVOID ObjectBody);
extern HSURF gahsurfHatch[HS_DDI_MAX];

View file

@ -194,7 +194,7 @@ INIT_FUNCTION NTSTATUS NTAPI InitDcImpl(VOID);
PPDEVOBJ FASTCALL IntEnumHDev(VOID);
PDC NTAPI DC_AllocDcWithHandle(VOID);
BOOL NTAPI DC_bAllocDcAttr(PDC pdc);
BOOL NTAPI DC_Cleanup(PVOID ObjectBody);
VOID NTAPI DC_vCleanup(PVOID ObjectBody);
BOOL FASTCALL IntGdiDeleteDC(HDC, BOOL);
BOOL FASTCALL DC_InvertXform(const XFORM *xformSrc, XFORM *xformDest);

View file

@ -344,9 +344,9 @@ DC_vInitDc(
}
}
BOOL
VOID
NTAPI
DC_Cleanup(PVOID ObjectBody)
DC_vCleanup(PVOID ObjectBody)
{
PDC pdc = (PDC)ObjectBody;
@ -391,8 +391,6 @@ DC_Cleanup(PVOID ObjectBody)
SURFACE_ShareUnlockSurface(pdc->dclevel.pSurface);
PDEVOBJ_vRelease(pdc->ppdev) ;
return TRUE;
}
VOID

View file

@ -87,53 +87,54 @@ ULONG gulFirstFree;
ULONG gulFirstUnused;
static PPAGED_LOOKASIDE_LIST gpaLookasideList;
static BOOL NTAPI GDIOBJ_Cleanup(PVOID ObjectBody);
static VOID NTAPI GDIOBJ_vCleanup(PVOID ObjectBody);
static const
GDICLEANUPPROC
apfnCleanup[] =
{
NULL, /* 00 GDIObjType_DEF_TYPE */
DC_Cleanup, /* 01 GDIObjType_DC_TYPE */
NULL, /* 02 GDIObjType_UNUSED1_TYPE */
NULL, /* 03 GDIObjType_UNUSED2_TYPE */
REGION_Cleanup, /* 04 GDIObjType_RGN_TYPE */
SURFACE_Cleanup, /* 05 GDIObjType_SURF_TYPE */
GDIOBJ_Cleanup, /* 06 GDIObjType_CLIENTOBJ_TYPE */
GDIOBJ_Cleanup, /* 07 GDIObjType_PATH_TYPE */
PALETTE_Cleanup, /* 08 GDIObjType_PAL_TYPE */
GDIOBJ_Cleanup, /* 09 GDIObjType_ICMLCS_TYPE */
GDIOBJ_Cleanup, /* 0a GDIObjType_LFONT_TYPE */
NULL, /* 0b GDIObjType_RFONT_TYPE, unused */
NULL, /* 0c GDIObjType_PFE_TYPE, unused */
NULL, /* 0d GDIObjType_PFT_TYPE, unused */
GDIOBJ_Cleanup, /* 0e GDIObjType_ICMCXF_TYPE */
NULL, /* 0f GDIObjType_SPRITE_TYPE, unused */
BRUSH_Cleanup, /* 10 GDIObjType_BRUSH_TYPE, BRUSH, PEN, EXTPEN */
NULL, /* 11 GDIObjType_UMPD_TYPE, unused */
NULL, /* 12 GDIObjType_UNUSED4_TYPE */
NULL, /* 13 GDIObjType_SPACE_TYPE, unused */
NULL, /* 14 GDIObjType_UNUSED5_TYPE */
NULL, /* 15 GDIObjType_META_TYPE, unused */
NULL, /* 16 GDIObjType_EFSTATE_TYPE, unused */
NULL, /* 17 GDIObjType_BMFD_TYPE, unused */
NULL, /* 18 GDIObjType_VTFD_TYPE, unused */
NULL, /* 19 GDIObjType_TTFD_TYPE, unused */
NULL, /* 1a GDIObjType_RC_TYPE, unused */
NULL, /* 1b GDIObjType_TEMP_TYPE, unused */
DRIVEROBJ_Cleanup,/* 1c GDIObjType_DRVOBJ_TYPE */
NULL, /* 1d GDIObjType_DCIOBJ_TYPE, unused */
NULL, /* 1e GDIObjType_SPOOL_TYPE, unused */
NULL, /* 1f reserved entry */
NULL, /* 00 GDIObjType_DEF_TYPE */
DC_vCleanup, /* 01 GDIObjType_DC_TYPE */
NULL, /* 02 GDIObjType_UNUSED1_TYPE */
NULL, /* 03 GDIObjType_UNUSED2_TYPE */
REGION_vCleanup, /* 04 GDIObjType_RGN_TYPE */
SURFACE_vCleanup, /* 05 GDIObjType_SURF_TYPE */
GDIOBJ_vCleanup, /* 06 GDIObjType_CLIENTOBJ_TYPE */
GDIOBJ_vCleanup, /* 07 GDIObjType_PATH_TYPE */
PALETTE_vCleanup, /* 08 GDIObjType_PAL_TYPE */
GDIOBJ_vCleanup, /* 09 GDIObjType_ICMLCS_TYPE */
GDIOBJ_vCleanup, /* 0a GDIObjType_LFONT_TYPE */
NULL, /* 0b GDIObjType_RFONT_TYPE, unused */
NULL, /* 0c GDIObjType_PFE_TYPE, unused */
NULL, /* 0d GDIObjType_PFT_TYPE, unused */
GDIOBJ_vCleanup, /* 0e GDIObjType_ICMCXF_TYPE */
NULL, /* 0f GDIObjType_SPRITE_TYPE, unused */
BRUSH_vCleanup, /* 10 GDIObjType_BRUSH_TYPE, BRUSH, PEN, EXTPEN */
NULL, /* 11 GDIObjType_UMPD_TYPE, unused */
NULL, /* 12 GDIObjType_UNUSED4_TYPE */
NULL, /* 13 GDIObjType_SPACE_TYPE, unused */
NULL, /* 14 GDIObjType_UNUSED5_TYPE */
NULL, /* 15 GDIObjType_META_TYPE, unused */
NULL, /* 16 GDIObjType_EFSTATE_TYPE, unused */
NULL, /* 17 GDIObjType_BMFD_TYPE, unused */
NULL, /* 18 GDIObjType_VTFD_TYPE, unused */
NULL, /* 19 GDIObjType_TTFD_TYPE, unused */
NULL, /* 1a GDIObjType_RC_TYPE, unused */
NULL, /* 1b GDIObjType_TEMP_TYPE, unused */
DRIVEROBJ_vCleanup,/* 1c GDIObjType_DRVOBJ_TYPE */
NULL, /* 1d GDIObjType_DCIOBJ_TYPE, unused */
NULL, /* 1e GDIObjType_SPOOL_TYPE, unused */
NULL, /* 1f reserved entry */
};
/* INTERNAL FUNCTIONS ********************************************************/
static
BOOL NTAPI
GDIOBJ_Cleanup(PVOID ObjectBody)
VOID
NTAPI
GDIOBJ_vCleanup(PVOID ObjectBody)
{
return TRUE;
/* Nothing to do */
}
static

View file

@ -28,7 +28,7 @@ extern PGDI_HANDLE_TABLE GdiHandleTable;
typedef PVOID PGDIOBJ;
typedef BOOL (NTAPI *GDICLEANUPPROC)(PVOID ObjectBody);
typedef VOID (NTAPI *GDICLEANUPPROC)(PVOID ObjectBody);
/* Every GDI Object must have this standard type of header.
* It's for thread locking. */

View file

@ -230,17 +230,15 @@ PALETTE_AllocPalWithHandle(
return ppal;
}
BOOL
VOID
NTAPI
PALETTE_Cleanup(PVOID ObjectBody)
PALETTE_vCleanup(PVOID ObjectBody)
{
PPALETTE pPal = (PPALETTE)ObjectBody;
if (pPal->IndexedColors && pPal->IndexedColors != pPal->apalColors)
{
ExFreePoolWithTag(pPal->IndexedColors, TAG_PALETTE);
}
return TRUE;
}
INT
@ -702,15 +700,15 @@ NtGdiGetNearestColor(
EngSetLastError(ERROR_INVALID_HANDLE);
return CLR_INVALID;
}
if(dc->dclevel.pSurface == NULL)
ppal = gppalMono;
else
ppal = dc->dclevel.pSurface->ppal;
/* Translate the color to the DC format */
Color = TranslateCOLORREF(dc, Color);
/* XLATE it back to RGB color space */
EXLATEOBJ_vInitialize(&exlo,
ppal,
@ -718,11 +716,11 @@ NtGdiGetNearestColor(
0,
RGB(0xff, 0xff, 0xff),
RGB(0, 0, 0));
nearest = XLATEOBJ_iXlate(&exlo.xlo, Color);
EXLATEOBJ_vCleanup(&exlo);
/* We're done */
DC_UnlockDc(dc);
@ -771,7 +769,7 @@ IntGdiRealizePalette(HDC hDC)
{
goto cleanup;
}
if(pdc->dctype == DCTYPE_DIRECT)
{
UNIMPLEMENTED;

View file

@ -117,9 +117,9 @@ PALETTE_vGetBitMasks(
PPALETTE ppal,
PULONG pulColors);
BOOL
VOID
NTAPI
PALETTE_Cleanup(PVOID ObjectBody);
PALETTE_vCleanup(PVOID ObjectBody);
FORCEINLINE
ULONG

View file

@ -2275,8 +2275,8 @@ IntSysCreateRectRgn(INT LeftRect, INT TopRect, INT RightRect, INT BottomRect)
return hrgn;
}
BOOL NTAPI
REGION_Cleanup(PVOID ObjectBody)
VOID NTAPI
REGION_vCleanup(PVOID ObjectBody)
{
PROSRGNDATA pRgn = (PROSRGNDATA)ObjectBody;
PPROCESSINFO ppi = PsGetCurrentProcessWin32Process();
@ -2288,7 +2288,6 @@ REGION_Cleanup(PVOID ObjectBody)
if (pRgn->Buffer && pRgn->Buffer != &pRgn->rdh.rcBound)
ExFreePoolWithTag(pRgn->Buffer, TAG_REGION);
return TRUE;
}
VOID FASTCALL

View file

@ -29,7 +29,7 @@ INT FASTCALL REGION_GetRgnBox(PROSRGNDATA Rgn, RECTL *pRect);
BOOL FASTCALL REGION_RectInRegion(PROSRGNDATA Rgn, const RECTL *rc);
BOOL FASTCALL REGION_CropAndOffsetRegion(PROSRGNDATA rgnDst, PROSRGNDATA rgnSrc, const RECTL *rect, const POINT *off);
VOID FASTCALL REGION_SetRectRgn(PROSRGNDATA pRgn, INT LeftRect, INT TopRect, INT RightRect, INT BottomRect);
BOOL NTAPI REGION_Cleanup(PVOID ObjectBody);
VOID NTAPI REGION_vCleanup(PVOID ObjectBody);
extern PROSRGNDATA prgnDefault;
extern HRGN hrgnDefault;

View file

@ -860,8 +860,8 @@ static void MDITile( HWND client, MDICLIENTINFO *ci, WPARAM wParam )
for (r = 1; r <= rows && *pWnd; r++, i++)
{
LONG posOptions = SWP_DRAWFRAME | SWP_NOACTIVATE | SWP_NOZORDER;
LONG style = GetWindowLongW(win_array[i], GWL_STYLE);
if (!(style & WS_SIZEBOX)) posOptions |= SWP_NOSIZE;
LONG style = GetWindowLongW(win_array[i], GWL_STYLE);
if (!(style & WS_SIZEBOX)) posOptions |= SWP_NOSIZE;
SetWindowPos(*pWnd, 0, x, y, xsize, ysize, posOptions);
y += ysize;
@ -1091,9 +1091,9 @@ static void MDI_UpdateFrameText( HWND frame, HWND hClient, BOOL repaint, LPCWSTR
DefWindowProcW( frame, WM_SETTEXT, 0, (LPARAM)lpBuffer );
if (repaint)
SetWindowPos( frame, 0,0,0,0,0, SWP_FRAMECHANGED |
SWP_NOSIZE | SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOZORDER );
if (repaint)
SetWindowPos( frame, 0,0,0,0,0, SWP_FRAMECHANGED |
SWP_NOSIZE | SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOZORDER );
}
@ -1830,7 +1830,7 @@ void WINAPI CalcChildScroll( HWND hwnd, INT scroll )
return;
}
ERR("CalcChildScroll 1\n");
TRACE("CalcChildScroll 1\n");
if ((list = WIN_ListChildren( hwnd )))
{
int i;
@ -1851,14 +1851,14 @@ void WINAPI CalcChildScroll( HWND hwnd, INT scroll )
OffsetRect(&rect, -WindowInfo.rcClient.left,
-WindowInfo.rcClient.top);
//WIN_GetRectangles( list[i], COORDS_PARENT, &rect, NULL );
ERR("CalcChildScroll L\n");
TRACE("CalcChildScroll L\n");
UnionRect( &childRect, &rect, &childRect );
}
}
HeapFree( GetProcessHeap(), 0, list );
}
UnionRect( &childRect, &clientRect, &childRect );
ERR("CalcChildScroll 3\n");
TRACE("CalcChildScroll 3\n");
/* set common info values */
info.cbSize = sizeof(info);
info.fMask = SIF_POS | SIF_RANGE | SIF_PAGE;
@ -1883,12 +1883,12 @@ void WINAPI CalcChildScroll( HWND hwnd, INT scroll )
SetScrollInfo(hwnd, SB_HORZ, &info, TRUE);
if (scroll == SB_HORZ)
{
ERR("CalcChildScroll H\n");
TRACE("CalcChildScroll H\n");
break;
}
else
{
ERR("CalcChildScroll B\n");
TRACE("CalcChildScroll B\n");
}
/* fall through */
case SB_VERT:
@ -1898,7 +1898,7 @@ void WINAPI CalcChildScroll( HWND hwnd, INT scroll )
info.nPage = 1 + clientRect.bottom - clientRect.top;
//info.nMax = childRect.bottom - clientRect.bottom;
//info.nPos = clientRect.top - childRect.top;
ERR("CalcChildScroll V\n");
TRACE("CalcChildScroll V\n");
if (ci->initialStyle & WS_VSCROLL)
SetScrollInfo(hwnd, SB_VERT, &info, TRUE);
break;
@ -2029,7 +2029,7 @@ TileWindows (HWND hwndParent, UINT wFlags, LPCRECT lpRect,
* TileChildWindows (USER32.@)
*/
WORD WINAPI TileChildWindows( HWND parent, UINT flags )
{
{
return TileWindows( parent, flags, NULL, 0, NULL );
}

View file

@ -245,7 +245,7 @@ DWORD FASTCALL get_input_codepage( void )
if (!ret) cp = CP_ACP;
return cp;
}
static WPARAM FASTCALL map_wparam_char_WtoA( WPARAM wParam, DWORD len )
{
WCHAR wch = wParam;
@ -253,7 +253,7 @@ static WPARAM FASTCALL map_wparam_char_WtoA( WPARAM wParam, DWORD len )
DWORD cp = get_input_codepage();
len = WideCharToMultiByte( cp, 0, &wch, 1, (LPSTR)ch, len, NULL, NULL );
if (len == 2)
if (len == 2)
return MAKEWPARAM( (ch[0] << 8) | ch[1], HIWORD(wParam) );
else
return MAKEWPARAM( ch[0], HIWORD(wParam) );
@ -743,9 +743,9 @@ MsgiAnsiToUnicodeMessage(HWND hwnd, LPMSG UnicodeMsg, LPMSG AnsiMsg)
case WM_CHARTOITEM:
case WM_MENUCHAR:
case WM_CHAR:
case WM_CHAR:
case WM_DEADCHAR:
case WM_SYSCHAR:
case WM_SYSCHAR:
case WM_SYSDEADCHAR:
case EM_SETPASSWORDCHAR:
case WM_IME_CHAR:
@ -1139,14 +1139,14 @@ MsgiUnicodeToAnsiMessage(HWND hwnd, LPMSG AnsiMsg, LPMSG UnicodeMsg)
}
case WM_GETDLGCODE:
if (UnicodeMsg->lParam)
if (UnicodeMsg->lParam)
{
MSG newmsg = *(MSG *)UnicodeMsg->lParam;
switch(newmsg.message)
{
case WM_CHAR:
case WM_DEADCHAR:
case WM_SYSCHAR:
case WM_SYSCHAR:
case WM_SYSDEADCHAR:
newmsg.wParam = map_wparam_char_WtoA( newmsg.wParam, 1 );
break;
@ -1169,9 +1169,9 @@ MsgiUnicodeToAnsiMessage(HWND hwnd, LPMSG AnsiMsg, LPMSG UnicodeMsg)
break;
case WM_CHARTOITEM:
case WM_MENUCHAR:
case WM_DEADCHAR:
case WM_SYSCHAR:
case WM_MENUCHAR:
case WM_DEADCHAR:
case WM_SYSCHAR:
case WM_SYSDEADCHAR:
case EM_SETPASSWORDCHAR:
AnsiMsg->wParam = map_wparam_char_WtoA(UnicodeMsg->wParam,1);
@ -1303,7 +1303,7 @@ MsgiUnicodeToAnsiReply(LPMSG AnsiMsg, LPMSG UnicodeMsg, LRESULT *Result)
{
DWORD len = AnsiMsg->wParam;// * 2;
if (len)
{
{
if (*Result)
{
RtlMultiByteToUnicodeN( UBuffer, AnsiMsg->wParam*sizeof(WCHAR), &len, Buffer, strlen(Buffer)+1 );
@ -2404,7 +2404,7 @@ SendMessageW(HWND Wnd,
if ( Window != NULL &&
Window->head.pti == ti &&
!ISITHOOKED(WH_CALLWNDPROC) &&
!ISITHOOKED(WH_CALLWNDPROC) &&
!ISITHOOKED(WH_CALLWNDPROCRET) &&
!(Window->state & WNDS_SERVERSIDEWINDOWPROC) )
{
@ -2468,7 +2468,7 @@ SendMessageA(HWND Wnd, UINT Msg, WPARAM wParam, LPARAM lParam)
if ( Window != NULL &&
Window->head.pti == ti &&
!ISITHOOKED(WH_CALLWNDPROC) &&
!ISITHOOKED(WH_CALLWNDPROC) &&
!ISITHOOKED(WH_CALLWNDPROCRET) &&
!(Window->state & WNDS_SERVERSIDEWINDOWPROC) )
{
@ -2935,7 +2935,7 @@ User32CallWindowProcFromKernel(PVOID Arguments, ULONG ArgumentLength)
case WM_SIZING:
{
PRECT prect = (PRECT) KMMsg.lParam;
ERR("WM_SIZING 1 t %d l %d r %d b %d\n",prect->top,prect->left,prect->right,prect->bottom);
TRACE("WM_SIZING 1 t %d l %d r %d b %d\n",prect->top,prect->left,prect->right,prect->bottom);
break;
}
default:
@ -2983,7 +2983,7 @@ User32CallWindowProcFromKernel(PVOID Arguments, ULONG ArgumentLength)
case WM_SIZING:
{
PRECT prect = (PRECT) KMMsg.lParam;
ERR("WM_SIZING 2 t %d l %d r %d b %d\n",prect->top,prect->left,prect->right,prect->bottom);
TRACE("WM_SIZING 2 t %d l %d r %d b %d\n",prect->top,prect->left,prect->right,prect->bottom);
break;
}
default: