This commit is contained in:
Herman Semenoff 2026-10-20 19:12:17 +00:00 • committed by GitHub
commit 0192f4b270
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -106,17 +106,21 @@ miPushPixels(GCPtr pGC, PixmapPtr pBitMap, DrawablePtr pDrawable,
#if 1
MiBits startmask;
if (screenInfo.bitmapBitOrder == IMAGE_BYTE_ORDER) {
if (screenInfo.bitmapBitOrder == LSBFirst)
startmask = (MiBits) (-1) ^ LONG2CHARSSAMEORDER((MiBits) (-1) << 1);
else
startmask = (MiBits) (-1) ^ LONG2CHARSSAMEORDER((MiBits) (-1) >> 1);
}
else if (screenInfo.bitmapBitOrder == LSBFirst)
if (screenInfo.bitmapBitOrder == LSBFirst) {
#if IMAGE_BYTE_ORDER == LSBFirst
startmask = (MiBits) (-1) ^ LONG2CHARSSAMEORDER((MiBits) (-1) << 1);
#else
startmask = (MiBits) (-1) ^ LONG2CHARSDIFFORDER((MiBits) (-1) << 1);
else
#endif
}
else {
#if IMAGE_BYTE_ORDER == MSBFirst
startmask = (MiBits) (-1) ^ LONG2CHARSSAMEORDER((MiBits) (-1) >> 1);
#else
startmask = (MiBits) (-1) ^ LONG2CHARSDIFFORDER((MiBits) (-1) >> 1);
#endif
}
#endif
MiBits *pwLineStart = calloc(1, BitmapBytePad(dx));
if (!pwLineStart)
@ -166,18 +170,20 @@ miPushPixels(GCPtr pGC, PixmapPtr pBitMap, DrawablePtr pDrawable,
}
#if 1
/* This is not quite right, but it'll do for now */
if (screenInfo.bitmapBitOrder == IMAGE_BYTE_ORDER) {
if (screenInfo.bitmapBitOrder == LSBFirst)
msk =
LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) << 1);
else
msk =
LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) >> 1);
}
else if (screenInfo.bitmapBitOrder == LSBFirst)
if (screenInfo.bitmapBitOrder == LSBFirst) {
#if IMAGE_BYTE_ORDER == LSBFirst
msk = LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) << 1);
#else
msk = LONG2CHARSDIFFORDER(LONG2CHARSDIFFORDER(msk) << 1);
else
#endif
}
else {
#if IMAGE_BYTE_ORDER == MSBFirst
msk = LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) >> 1);
#else
msk = LONG2CHARSDIFFORDER(LONG2CHARSDIFFORDER(msk) >> 1);
#endif
}
#else
msk = SCRRIGHT(msk, 1);
#endif
@ -217,18 +223,20 @@ miPushPixels(GCPtr pGC, PixmapPtr pBitMap, DrawablePtr pDrawable,
}
#if 1
/* This is not quite right, but it'll do for now */
if (screenInfo.bitmapBitOrder == IMAGE_BYTE_ORDER) {
if (screenInfo.bitmapBitOrder == LSBFirst)
msk =
LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) << 1);
else
msk =
LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) >> 1);
}
else if (screenInfo.bitmapBitOrder == LSBFirst)
if (screenInfo.bitmapBitOrder == LSBFirst) {
#if IMAGE_BYTE_ORDER == LSBFirst
msk = LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) << 1);
#else
msk = LONG2CHARSDIFFORDER(LONG2CHARSDIFFORDER(msk) << 1);
else
#endif
}
else {
#if IMAGE_BYTE_ORDER == MSBFirst
msk = LONG2CHARSSAMEORDER(LONG2CHARSSAMEORDER(msk) >> 1);
#else
msk = LONG2CHARSDIFFORDER(LONG2CHARSDIFFORDER(msk) >> 1);
#endif
}
#else
msk = SCRRIGHT(msk, 1);
#endif