[Xcb] Xlibs pretty print

Jamey Sharp jamey at minilop.net
Wed Jun 15 00:47:38 PDT 2005


On Wed, 2005-05-11 at 16:55 -0400, Jeremy Kolb wrote:
> If you are running normal xlibs and you run into a request/reply that 
> the server does not support you get a pretty little error message that 
> tells you so.  If you are running xlibs/xcb you get something like:
> 
> arbfptest1: xcl/io.c:276: _XReply: Assertion `!dpy->xcl->reply_data' failed.
> 
> I haven't looked at it yet but is it possible to use xlib's function for 
> this or do the xcb hooks make that not likely?  I remember on the wiki 
> we have something about pretty printing but that hasn't been updated in 
> ages.

I *think* you've simply misdiagnosed the underlying problem.

That assertion failure means that some Xlib function did not consume all
the bytes of the reply it received. It's allowed to consume them using
XRead or XEatData (or variants), but it has to consume them somehow. If
you can identify the last Xlib function that called _XReply prior to the
function "arbfptest1" was in, then we'll probably find there's a bug in
that function.

Straight Xlib does not test for this error -- doing so would be a little
bit hard -- though I would expect it to enter an inconsistent state and
blow up later. So I suppose it's possible that there's been an Xlib bug
here that nobody noticed.

--Jamey



More information about the xcb mailing list