[Xcb] Bug in image handling on PPC

Barton C Massey bart at cs.pdx.edu
Sun Jul 27 10:18:26 PDT 2008

I was pretty sure that the thing I fixed in get_pixel() /
put_pixel() was indeed a bug, but it sounds like I still
have some thinking to do.

Sorry that didn't get it for you.  I'll stare at it harder.


In message <200807271709.04652.doomster at knuut.de> you wrote:
> 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