winfont.c
winmultiwindowshape.c
winmultiwindowwindow.c
winpfbdd.c
winshaddd.c
winshadddnl.c
winshadgdi.c
Fix incorrect wrapping of functions. Ensure the pointers from pScreen point
    to the called function even if wrapped functions changed it
Set the window properties to NULL to avoid referencing freed memory because
    of timing problems after deleting a window
Do not wrap ChangeWindowAttributes. All functions are noops currently
This commit is contained in:
Alexander Gottwald 2005-02-12 14:47:17 +00:00
commit 8df7126f09
11 changed files with 282 additions and 87 deletions

View file

@ -42,13 +42,17 @@
void
winSetShapeMultiWindow (WindowPtr pWin)
{
ScreenPtr pScreen = pWin->drawable.pScreen;
winWindowPriv(pWin);
winScreenPriv(pScreen);
#if CYGMULTIWINDOW_DEBUG
ErrorF ("winSetShapeMultiWindow - pWin: %08x\n", pWin);
#endif
/* Call any wrapped SetShape function */
if (winGetScreenPriv(pWin->drawable.pScreen)->SetShape)
winGetScreenPriv(pWin->drawable.pScreen)->SetShape (pWin);
WIN_UNWRAP(SetShape);
(*pScreen->SetShape)(pWin);
WIN_WRAP(SetShape, winSetShapeMultiWindow);
/* Update the Windows window's shape */
winReshapeMultiWindow (pWin);