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? _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
