[Xcb] Bug in image handling on PPC

Ulrich Eckhardt doomster at knuut.de
Sun Jul 27 08:09:04 PDT 2008


On Sunday 27 July 2008 10:10:24 Barton C Massey wrote:
> I found two suspected bugs: (1) the byte-swapping was being
> done with the wrong conversion unit, and (2) get_pixel() and
> put_pixel() for XY bitmaps were using bpp instead of unit
> for the indexing, which didn't work for big-endian images.
> Note that since they agreed, they *seemed* to work. :-)

Actually, they really did work. When I used a loop with get/put, the pixmap 
was usable in combination with the shape extension. I now patched 
xcb_image_convert() as per your instructions and the result is not displayed 
correctly.

> Attached is a patch that should fix things up.  It works for
> your test case, anyhow :-).

I haven't tested the testcase with it, so much up front. However, I tested the 
original program (from which I distilled the testcase) with the patch and it 
didn't work. Note that not only get_pixel, put_pixel and image_convert have 
to agree but also the X server which eventually has to display the whole 
thing. I'll try to reactivate another x86 machine I have here to see how X 
connections between machines with differing endianess behave, I'll report 
anything interesting I can find.

Uli


More information about the Xcb mailing list