--- cairo-xlib-render-compositor.c 2013-04-12 11:22:48.010384018 +0200 +++ cairo-xlib-render-compositor.c.new 2013-04-12 11:23:54.362925287 +0200 @@ -1318,10 +1318,10 @@ } n = new; d = (uint32_t *) data; - do { + while (c--) { *n++ = bswap_32 (*d); d++; - } while (--c); + } data = (uint8_t *) new; } break;