From ec5417b965616e60b51466fe9fd2b44cb5abb349 Mon Sep 17 00:00:00 2001 From: Jon TURNEY Date: Sun, 12 Jul 2009 23:58:32 +0100 Subject: [PATCH] Cygwin/X: Ensure WM_STATE atom exists in multiwindow mode Workaround a bug in iiimxcf (assuming the WM_STATE atom exists), which can cause many Solaris clients to simply fail with a BadAtom error Signed-off-by: Jon TURNEY Reviewed-by: Colin Harrison --- hw/xwin/winmultiwindowwm.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/hw/xwin/winmultiwindowwm.c b/hw/xwin/winmultiwindowwm.c index 27f5e3278..880ca6a1c 100644 --- a/hw/xwin/winmultiwindowwm.c +++ b/hw/xwin/winmultiwindowwm.c @@ -1012,6 +1012,16 @@ winMultiWindowXMsgProc (void *pArg) "WM_CHANGE_STATE", False); + /* + iiimxcf had a bug until 2009-04-27, assuming that the + WM_STATE atom exists, causing clients to fail with + a BadAtom X error if it doesn't. + + Since this is on in the default Solaris 10 install, + workaround this by making sure it does exist... + */ + XInternAtom(pProcArg->pDisplay, "WM_STATE", 0); + /* Loop until we explicitly break out */ while (1) {