Fixing devPrivates

Keith Packard keithp at keithp.com
Sat May 1 01:49:37 PDT 2010


Ok, I've gone ahead and changed the implementation so that it exposes an
explicit PRIVATE_XSELINUX which can be used on the following objects:

client, window, pixmap, gc, cursor, colormap, device, extension,
selection, property, picture, glyphset

(pixmap includes dbe buffers, btw)

I've also made it so that the XSELinux keys get pushed to the start of
the devPrivates array so that there aren't any wasted bytes.

And, I even tested this -- just created a PRIVATE_XSELINUX key of 64
bytes after the call to InitExtensions.

Then I found a pile of bugs in the code -- PRIVATE_XSELINUX adds a
private key to all kinds of structures. I fixed the colormap issue I
found earlier; the default colormap is now special and will get adjusted
when new keys get registered after it has been created. Similarly,
extensions can all get their privates adjusted after being created.

I've also reworked the patch history so that it starts with a sequence
of other bug fixes, then has one giant patch which switches the API
without switching the implementation, and then another patch which only
changes the implementation and not the API. Finally, a sequence of bug
fixes to clean up the XSELinux issues. I can squash those into the other
two patches if that seems sensible.

-- 
keith.packard at intel.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20100501/33a332a8/attachment.pgp>


More information about the xorg-devel mailing list