Spinning in _XReply

xmail at karlt.net xmail at karlt.net
Tue Feb 22 13:26:21 PST 2011


Rami Ylimäki writes:

> Today I found out that even Mozilla code is
> suffering from this problem
> (http://mxr.mozilla.org/mozilla-central/source/toolkit/xre/nsX11ErrorHandler.cpp).
>
> Adding Karl into CC. It looks like nsX11ErrorHandler.cpp is also
> calling Xlib functions resulting in protocol requests, which is
> not allowed.

Yes, you and Julian are right that clients should not generate
protocol requests from within an error handler, and we should
address this in our client.

Our handler makes the error fatal but the goal was to get as much
information as practical abort the error for error reporting.
Raw request code numbers are harder to interpret as they depend on
which extensions the server is using.

Although wrong, our code has been working well enough for us to get
useful information.  If someone is able to point out a reason why
this now works less successfully than previously, then that would
bump up the priority at our end.

The information we want is already on display->ext_procs->codes
but "This structure is private to the library."  I'm not aware of
a public API to get this information from Xlib.

I guess we could use a separate connection to query the extension
codes.  Is it reasonable to assume that all connections to the
same display would use the same codes?


More information about the xorg-devel mailing list