<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - GLX_INTEL_swap_event crashes driver when swapping window buffers"
href="https://bugs.freedesktop.org/show_bug.cgi?id=54372#c21">Comment # 21</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - GLX_INTEL_swap_event crashes driver when swapping window buffers"
href="https://bugs.freedesktop.org/show_bug.cgi?id=54372">bug 54372</a>
from <span class="vcard"><a class="email" href="mailto:danmanj@gmail.com" title="danmanj@gmail.com">danmanj@gmail.com</a>
</span></b>
<pre>*SIGH*
Well this bug has led to a new bug. I'm just going to post here since I have
your attention :)
I changed my app to use glxwindows to avoid the crash, and it turns out that
this breaks glXUseXFont()
:'(
In detail:
DRI_glXUseXFont() creates a Pixmap and X11 graphics context relative to the
current glx context (see the line
win = CC->currentDrawable;
)
But now that I'm using glxwindows the currentDrawable isn't actually an XID for
a Window, so the plain-old X11 subsystem refuses, and all subsequent operations
fail. I get a stream of errors like:
[17098] 7.810910: *** ERROR: xid=0x400010 req=53/0 err=9: X_CreatePixmap:
BadDrawable (invalid Pixmap or Window parameter)
[17098] 7.810919: *** ERROR: xid=0x4002cf req=55/0 err=9: X_CreateGC:
BadDrawable (invalid Pixmap or Window parameter)
[17098] 7.810923: *** ERROR: xid=0x4002cf req=54/0 err=4: X_FreePixmap:
BadPixmap (invalid Pixmap parameter)
[17098] 7.810926: *** ERROR: xid=0x400010 req=53/0 err=9: X_CreatePixmap:
BadDrawable (invalid Pixmap or Window parameter)
[17098] 7.810930: *** ERROR: xid=0x4002d1 req=70/0 err=9:
X_PolyFillRectangle: BadDrawable (invalid Pixmap or Window parameter)
[17098] 7.810934: *** ERROR: xid=0x4002d1 req=56/0 err=13: X_ChangeGC: BadGC
(invalid GC parameter)
(1000 or so more lines of errors deleted)
So now I can either have text or I can have swap events, but not both!
===
To follow up on the whole "swap events reported but not actually generated"
complaint: It looks like this was fixed in
<a href="http://lists.x.org/archives/xorg-devel/2013-February/035449.html">http://lists.x.org/archives/xorg-devel/2013-February/035449.html</a> . I've added
code to my app to detect this and work around it by falling back to not using
swap events.
===
To follow up on the spec: the line of text "The mask field indicates which of
the buffers in the drawable were swapped." Is referring to what must have been
a deleted field. Probably want to remove this.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>