21 lines
837 B
Diff
21 lines
837 B
Diff
This fixed a problem with libpixman getting the depth wrong for some
|
|
16bpp image formats but still render things correctly. Using
|
|
surface->depth instead of image->depth for the ximage was a quick way to
|
|
avoid this problem.
|
|
|
|
It's not the appropriate fix and should probably not go upstream.
|
|
libpixmap should be fixed if it hasn't already.
|
|
|
|
================================================================================
|
|
--- src/cairo-xlib-surface.c
|
|
+++ src/cairo-xlib-surface.c
|
|
@@ -796,7 +796,7 @@
|
|
ximage.bitmap_unit = 32; /* always for libpixman */
|
|
ximage.bitmap_bit_order = native_byte_order;
|
|
ximage.bitmap_pad = 32; /* always for libpixman */
|
|
- ximage.depth = image->depth;
|
|
+ ximage.depth = surface->depth;
|
|
ximage.bytes_per_line = image->stride;
|
|
ximage.bits_per_pixel = bpp;
|
|
ximage.red_mask = red;
|