[PATCH 0/6] GLX cleanup, round three

Adam Jackson ajax at redhat.com
Mon Mar 14 12:31:23 PDT 2011


Resend, with a few patches merged together where it makes sense.  Again,
patch 1 is nonsense, and is merely included as a lemma on the way to
getting the rest of the series to a testable state.

I think the simplest correct solution for patch 1 is, when DrawableGone
deletes one (or both) of the context's drawables, create a 1x1 glxpixmap
and bind it in place of the destroyed drawables.  This gives the spec-
mandated behaviour of state changes taking effect but rendering being
undefined, without requiring changing mesa to allow actively binding into
the troublesome "half-bound" state.

The only thing I don't like about that is that you want to hide the XID
for that drawable from clients, or at least make it so trying to destroy it
throws BadAccess.  But that's sort of true generally already, nothing
really protects server-created XIDs from being destroyed by clients if
the client can manage to guess the XID and resource type correctly.

- ajax



More information about the xorg-devel mailing list