diff -up lesstif-0.95.0/lib/Xm-2.1/RowColumn.c~ lesstif-0.95.0/lib/Xm-2.1/RowColumn.c --- lesstif-0.95.0/lib/Xm-2.1/RowColumn.c~ 2007-09-02 22:03:10.000000000 +0200 +++ lesstif-0.95.0/lib/Xm-2.1/RowColumn.c 2007-09-02 22:06:16.000000000 +0200 @@ -1014,6 +1014,10 @@ initialize(Widget request, Widget new_w, } +static void xtWarnCB(String message) +{ +} + static void destroy(Widget w) { @@ -1033,14 +1039,19 @@ destroy(Widget w) if (realpar != NULL) { + XtErrorHandler old_handler; XtRemoveEventHandler(realpar, ButtonPressMask|ButtonReleaseMask, False, _XmPopupButtonPressHandler, (XtPointer)w ); - /* Fix a grab problem -- dwilliss */ - fprintf(stderr, "XtUngrabButton(%s,%u,%u)\n", - XtName(realpar), RC_PostButton(w), RC_PostModifiers(w)); + /* Yes this may not be necessary, shut up Xt see: + http://sourceforge.net/tracker/index.php?func=detail&aid=1217326&group_id=8596&atid=108596 */ + old_handler = XtAppSetWarningHandler( + XtWidgetToApplicationContext(realpar), + xtWarnCB); XtUngrabButton(realpar, RC_PostButton(w), RC_PostModifiers(w)); + XtAppSetWarningHandler(XtWidgetToApplicationContext(realpar), + old_handler); } }