Avoid dodgy asm optimization if the server's byte order is not
LSBFirst.
diff --git a/graphics/x11drv/dib.c b/graphics/x11drv/dib.c
index 3fc14d7..bd43767 100644
--- a/graphics/x11drv/dib.c
+++ b/graphics/x11drv/dib.c
@@ -2481,7 +2481,8 @@
case 16:
#if defined(__i386__) && defined(__GNUC__)
/* Some X servers might have 32 bit/ 16bit deep pixel */
- if (lines && dstwidth && (bmpImage->bits_per_pixel == 16))
+ if (lines && dstwidth && (bmpImage->bits_per_pixel == 16) &&
+ (ImageByteOrder(gdi_display)==LSBFirst) )
{
dstbits=bmpImage->data+left*2+(lines-1)*bmpImage->bytes_per_line;
/* FIXME: Does this really handle all these cases correctly? */
@@ -2515,7 +2516,8 @@
case 24:
case 32:
#if defined(__i386__) && defined(__GNUC__)
- if (lines && dstwidth && (bmpImage->bits_per_pixel == 32))
+ if (lines && dstwidth && (bmpImage->bits_per_pixel == 32) &&
+ (ImageByteOrder(gdi_display)==LSBFirst) )
{
dstbits=bmpImage->data+left*4+(lines-1)*bmpImage->bytes_per_line;
/* FIXME: Does this really handle both cases correctly? */