From 2dfa0facd984e792dd9ac55ff7648d09b4e1855c Mon Sep 17 00:00:00 2001 From: Karoly Lorentey Date: Mon, 2 Jan 2006 07:43:46 +0000 Subject: [PATCH] Install workaround for "X protocol error: BadCursor (invalid Cursor parameter) on protocol request 2" * lwlib/xlwmenu.c (XlwMenuRealize): Ignore X errors while setting up cursor shape. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-483 --- lwlib/xlwmenu.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lwlib/xlwmenu.c b/lwlib/xlwmenu.c index 1f6cad8d3f2..8f5e7382086 100644 --- a/lwlib/xlwmenu.c +++ b/lwlib/xlwmenu.c @@ -1825,6 +1825,7 @@ XlwMenuRealize (w, valueMask, attributes) XlwMenuWidget mw = (XlwMenuWidget)w; XSetWindowAttributes xswa; int mask; + int count; (*xlwMenuWidgetClass->core_class.superclass->core_class.realize) (w, valueMask, attributes); @@ -1832,7 +1833,16 @@ XlwMenuRealize (w, valueMask, attributes) xswa.save_under = True; xswa.cursor = mw->menu.cursor_shape; mask = CWSaveUnder | CWCursor; + /* I sometimes get random BadCursor errors while creating the first + frame on a display. I can not find their reason, but they are + annoying so for now let's ignore any errors here. -- lorentey */ +#ifdef emacs + count = x_catch_errors (XtDisplay (w)); +#endif XChangeWindowAttributes (XtDisplay (w), XtWindow (w), mask, &xswa); +#ifdef emacs + x_uncatch_errors (XtDisplay (w), count); +#endif mw->menu.windows [0].window = XtWindow (w); mw->menu.windows [0].x = w->core.x;