From b0460841e84d7491fcede5b5fd8fef03f68f40f6 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Thu, 26 Sep 2024 17:34:54 +0200 Subject: [PATCH] xwin: drop wrapping on ScreenRec->DestroyWindow() Instead of complicated wrapping, just call fbDestroyWindow directly. Signed-off-by: Enrico Weigelt, metux IT consult --- hw/xwin/win.h | 1 - hw/xwin/winmultiwindowwindow.c | 8 +------- hw/xwin/winscrinit.c | 2 -- hw/xwin/winwindow.c | 8 +------- 4 files changed, 2 insertions(+), 17 deletions(-) diff --git a/hw/xwin/win.h b/hw/xwin/win.h index 44736a08b..1efc8236e 100644 --- a/hw/xwin/win.h +++ b/hw/xwin/win.h @@ -501,7 +501,6 @@ typedef struct _winPrivScreenRec { /* Window Procedures for Rootless mode */ CreateWindowProcPtr CreateWindow; - DestroyWindowProcPtr DestroyWindow; PositionWindowProcPtr PositionWindow; ChangeWindowAttributesProcPtr ChangeWindowAttributes; RealizeWindowProcPtr RealizeWindow; diff --git a/hw/xwin/winmultiwindowwindow.c b/hw/xwin/winmultiwindowwindow.c index 9c947afd4..c0845a7ca 100644 --- a/hw/xwin/winmultiwindowwindow.c +++ b/hw/xwin/winmultiwindowwindow.c @@ -131,19 +131,13 @@ winCreateWindowMultiWindow(WindowPtr pWin) Bool winDestroyWindowMultiWindow(WindowPtr pWin) { - Bool fResult = TRUE; - ScreenPtr pScreen = pWin->drawable.pScreen; - winWindowPriv(pWin); - winScreenPriv(pScreen); #if ENABLE_DEBUG ErrorF("winDestroyWindowMultiWindow - pWin: %p\n", pWin); #endif - WIN_UNWRAP(DestroyWindow); - fResult = (*pScreen->DestroyWindow) (pWin); - WIN_WRAP(DestroyWindow, winDestroyWindowMultiWindow); + Bool fResult = fbDestroyWindow(pWin); /* Flag that the window has been destroyed */ pWinPriv->fXKilled = TRUE; diff --git a/hw/xwin/winscrinit.c b/hw/xwin/winscrinit.c index 48d3e7a26..5e12cccb8 100644 --- a/hw/xwin/winscrinit.c +++ b/hw/xwin/winscrinit.c @@ -378,7 +378,6 @@ winFinishScreenInitFB(int i, ScreenPtr pScreen, int argc, char **argv) /* Save a pointer to each lower-level window procedure */ WRAP(CreateWindow); - WRAP(DestroyWindow); WRAP(RealizeWindow); WRAP(UnrealizeWindow); WRAP(PositionWindow); @@ -411,7 +410,6 @@ winFinishScreenInitFB(int i, ScreenPtr pScreen, int argc, char **argv) /* Save a pointer to each lower-level window procedure */ WRAP(CreateWindow); - WRAP(DestroyWindow); WRAP(RealizeWindow); WRAP(UnrealizeWindow); WRAP(PositionWindow); diff --git a/hw/xwin/winwindow.c b/hw/xwin/winwindow.c index 60be32da4..905cc9093 100644 --- a/hw/xwin/winwindow.c +++ b/hw/xwin/winwindow.c @@ -80,19 +80,13 @@ winCreateWindowRootless(WindowPtr pWin) Bool winDestroyWindowRootless(WindowPtr pWin) { - Bool fResult = FALSE; - ScreenPtr pScreen = pWin->drawable.pScreen; - winWindowPriv(pWin); - winScreenPriv(pScreen); #if ENABLE_DEBUG winTrace("winDestroyWindowRootless (%p)\n", pWin); #endif - WIN_UNWRAP(DestroyWindow); - fResult = (*pScreen->DestroyWindow) (pWin); - WIN_WRAP(DestroyWindow, winDestroyWindowRootless); + Bool fResult = fbDestroyWindow(pWin); if (pWinPriv->hRgn != NULL) { DeleteObject(pWinPriv->hRgn);