diff options
-rw-r--r-- | xorg-server/hw/xwin/InitOutput.c | 1 | ||||
-rw-r--r-- | xorg-server/hw/xwin/winwndproc.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/xorg-server/hw/xwin/InitOutput.c b/xorg-server/hw/xwin/InitOutput.c index 14d88894b..6dc58aeb1 100644 --- a/xorg-server/hw/xwin/InitOutput.c +++ b/xorg-server/hw/xwin/InitOutput.c @@ -170,6 +170,7 @@ winClipboardShutdown (void) /* Synchronously destroy the clipboard window */
if (g_hwndClipboard != NULL)
{
+ g_fClipboardStarted=FALSE; /* This is to avoid dead-locls caused by the clipboard thread still doing some stuff */
SendMessage (g_hwndClipboard, WM_DESTROY, 0, 0);
/* NOTE: g_hwndClipboard is set to NULL in winclipboardthread.c */
}
diff --git a/xorg-server/hw/xwin/winwndproc.c b/xorg-server/hw/xwin/winwndproc.c index ca3a66b49..ab01f44ea 100644 --- a/xorg-server/hw/xwin/winwndproc.c +++ b/xorg-server/hw/xwin/winwndproc.c @@ -50,6 +50,7 @@ * Global variables */ +extern Bool g_fClipboardStarted; Bool g_fCursor = TRUE; Bool g_fButton[3] = { FALSE, FALSE, FALSE }; @@ -1198,6 +1199,7 @@ winWindowProc (HWND hwnd, UINT message, if (s_pScreenInfo->fMultiWindow) winDeinitMultiWindowWM (); #endif + g_fClipboardStarted=FALSE; /* This is to avoid dead-locls caused by the clipboard thread still doing some stuff */ GiveUp (0); return 0; |