[cairo] Bug in _cairo_xlib_surface_create_similar

Robert O'Callahan rocallahan at novell.com
Mon Feb 20 13:26:24 PST 2006


I recently discovered that cairo_create_similar on a 16-bit xlib surface
creates a surface backed by a 24-bit pixmap. This results in absymal
performance --- I can actually watch a copy from the similar to the
original move down the screen, on my dual Xeon, NVidia vendor driver
machine. It also means xlib-based code like GTK themes can't render to
the surface because it doesn't match the screen depth.

The attached patch makes _cairo_xlib_surface_create_similar match the
characteristics of the input surface as closely as I know how, and fixes
my issues. Please evaluate...

Rob
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cairo-xlib-create-similar.patch
Type: text/x-patch
Size: 4203 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/cairo/attachments/20060221/0504c73a/cairo-xlib-create-similar.bin


More information about the cairo mailing list