[Mesa-dev] [Bug 54080] glXQueryDrawable fails with GLXBadDrawable for a Window in direct context
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Oct 2 07:27:50 PDT 2014
https://bugs.freedesktop.org/show_bug.cgi?id=54080
--- Comment #6 from Adrian Negreanu <adrian.m.negreanu at intel.com> ---
Created attachment 107229
--> https://bugs.freedesktop.org/attachment.cgi?id=107229&action=edit
call SendMakeCurrent.
With the 0001-SendMakeCurrent, the error goes away, but causes an Xorg segfault
when glxgears exits.
(gdb) bt
#0 in ?? ()
#1 in glxClientCallback (list=<optimized out>, closure=<optimized out>,
data=<optimized out>) at xserver/glx/glxext.c:291
#2 in _CallCallbacks (pcbl=pcbl at entry=0x5555559a5d60 <ClientStateCallback>,
call_data=call_data at entry=0x7fffffffd9f0) at xserver/dix/dixutils.c:718
#3 in CallCallbacks (call_data=0x7fffffffd9f0, pcbl=0x5555559a5d60
<ClientStateCallback>) at xserver/include/callback.h:83
#4 CloseDownClient (client=client at entry=0x5555560d5f10) at
xserver/dix/dispatch.c:3381
#5 in Dispatch () at xserver/dix/dispatch.c:444
#6 in dix_main (argc=4, argv=0x7fffffffdbe8, envp=<optimized out>) at
xserver/dix/main.c:296
#7 in __libc_start_main (main=0x5555555994e0 <main>, argc=4,
argv=0x7fffffffdbe8, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7fffffffdbd8) at libc-start.c:287
#8 in _start ()
xserver/glx/glxext.c:291 looks like this
286 case ClientStateGone:
287 /* detach from all current contexts */
288 for (c = glxAllContexts; c; c = next) {
289 next = c->next;
290 if (c->currentClient == pClient) {
>291 c->loseCurrent(c);
292 lastGLContext = NULL;
293 c->currentClient = NULL;
294 __glXFreeContext(c);
295 }
296 }
but c->loseCurrent is NULL, as most of the other fields of `c', except a few,
like destroy and isDirect.
For dri2, loseCurrent should be __glXDRIcontextLoseCurrent, set by
__glXDRIscreenCreateContext (by looking at xserver/glx/glxdri2.c)
But GLXscreen::createContext is called only when !isDirect
by DoCreateContext in xserver/glx/glxcmds.c
by __glXDisp_CreateContextAttribsARB in ./glx/createcontext.c
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20141002/cccb9c12/attachment.html>
More information about the mesa-dev
mailing list