summaryrefslogtreecommitdiff
path: root/hw/xwin/winmultiwindowshape.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/xwin/winmultiwindowshape.c')
-rwxr-xr-xhw/xwin/winmultiwindowshape.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/hw/xwin/winmultiwindowshape.c b/hw/xwin/winmultiwindowshape.c
index bfec1a1ea..e2996a81e 100755
--- a/hw/xwin/winmultiwindowshape.c
+++ b/hw/xwin/winmultiwindowshape.c
@@ -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);