[Mesa3d-dev] Re: recent changes to Xgl

David Reveman davidr at novell.com
Wed Jun 8 04:43:47 PDT 2005


On Wed, 2005-06-08 at 00:45 -0400, Jon Smirl wrote: 
> On 6/8/05, Jon Smirl <jonsmirl at gmail.com> wrote:
> > Somewhere there must be a dispatch table for remote GLX calls versus
> > the local ones. My guess would be that neither of these are getting
> > activated and you are just defaulting into the all noop one. It is not
> > clear to me if the noop dispatch table being hit is generated from the
> > mesa library or GLX code.
> 
> I can't see any place in Xgl where you dlopen libGL and copy the
> symbols out of it and into your dispatch table. Xgl now contains the
> glGetString symbol. When glitz tries to use glGetString it gets the
> Xgl implementation of glGetString instead of the libGL one.

No, Xgl doesn't contain any gl* symbols. Or at least it shouldn't.
glcore is all in the mgl namespace. A call to glGetString inside Xgl
should get the libGL one.

> 
> The Xgl displatch table needs to default to passing these calls onto
> libGL unless it is a remote call and the table has been overwritten
> with the GLX versions. I don't think you initially filled the dispatch
> table with the libGL version of the calls so you are just getting the
> default table of noop implementations. You have to dlopen(libGL) and
> get the symbols explicitly otherwise you'll get the Xgl versions.
> 

We shouldn't have to dlopen libGL. However, we could do that if we found
it useful.

-David




More information about the xorg mailing list