Michael Vance wrote:
> 
> On Thu, Jan 27, 2000 at 11:49:45AM -0700, Brian Paul wrote:

> > Have you looked at glXReleaseBuffersMESA(Display, GLXDrawable)?
> > If you call this function after destroying your window, Mesa
> > will free the internal XMesaBuffer associated with the drawable.
> 
> No, I have not. This did the trick, though, thanks! I just did it
> after the destroy context call.

So, you're all set now?


> > has been closed is a problem.  I don't know of a way to determine
> > if a given Display * is valid.
> 
> Neither do I, and a quick scan of the XLib manual didn't clue me in. I
> take it this stuff is a result of the 3Dfx drawable weirdness because
> of Glide?

It's not Glide related.  Mesa needs to associate a bunch of private
data with each X Drawable, Visual, etc.  Being a client-side library,
Mesa has no way to offically attach its data to those X data types.
And since Mesa can't know when X Drawables and Visuals are destroyed,
it doesn't know when to free the private associated data.

The garbage collection routine tries to determine when X drawables
have been destroyed.  When Mesa detects that an X drawable has been
destroyed, the associated data gets freed.  As you've found, there
are ways to foil this.

Since traditional Mesa on X is just an Xlib client, it can't make
all the hooks it needs in order to work just like real GLX.
Every so often, somebody falls into one of these traps.

-Brian


_______________________________________________
Mesa-dev maillist  -  [EMAIL PROTECTED]
http://lists.mesa3d.org/mailman/listinfo/mesa-dev

Reply via email to