diff options
-rw-r--r-- | src/nv04_exa.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nv04_exa.c b/src/nv04_exa.c index 7a58dd7..d5dec68 100644 --- a/src/nv04_exa.c +++ b/src/nv04_exa.c @@ -49,7 +49,8 @@ NV04EXASetROP(PixmapPtr ppix, int subc, int mthd, int alu, Pixel planemask) NVPtr pNv = NVPTR(pScrn); struct nouveau_pushbuf *push = pNv->pushbuf; - planemask |= ~0 << ppix->drawable.bitsPerPixel; + if (ppix->drawable.bitsPerPixel < 32) + planemask |= ~0 << ppix->drawable.bitsPerPixel; if (planemask != ~0 || alu != GXcopy) { if (ppix->drawable.bitsPerPixel == 32) return FALSE; |