Glynn Clements <glynn(a)sensei.co.uk> writes:
A simple test case seems to indicate that you can longjmp() out of
the
IOErrorHandler as long as you delete the `Display *' from the
XtAppContext (if you don't, select() continuously fails).
The bad news is that:
a) The XtDeleteFromAppContext function is internal to libXt, and
(worse still):
b) XtAppContext is an opaque type. It's actually an `_XtAppStruct *',
and _XtAppStruct is defined in InitialI.h, which is an internal Xt
header. We could just copy the definition, but there's no guarantee
that individual vendors haven't made changes to it.
IOW: there seems to be a solution, but I don't know whether it can be
implemented in a way that doesn't mean that you need the X11 source
code to build XEmacs.
I don't understand why you're trying to twiddle the app context. Isn't
XtCloseDisplay enough to solve the problem ?