diff options
Diffstat (limited to 'fb/fbgc.c')
-rw-r--r-- | fb/fbgc.c | 20 |
1 files changed, 11 insertions, 9 deletions
@@ -21,7 +21,7 @@ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. */ -/* $XFree86: xc/programs/Xserver/fb/fbgc.c,v 1.12 2001/05/29 04:54:09 keithp Exp $ */ +/* $XFree86: xc/programs/Xserver/fb/fbgc.c,v 1.15 2003/12/18 15:25:41 alanh Exp $ */ #include "fb.h" #ifdef IN_MODULE @@ -253,17 +253,19 @@ fbValidateGC(GCPtr pGC, unsigned long changes, DrawablePtr pDrawable) } if (changes & GCStipple) { - if (pGC->stipple && - (FbEvenStip (pGC->stipple->drawable.width, - pDrawable->bitsPerPixel) || - fbCanEvenStipple (pGC->stipple, pDrawable->bitsPerPixel))) - { - pPriv->evenStipple = TRUE; + pPriv->evenStipple = FALSE; + + if (pGC->stipple) { + + /* can we do an even stipple ?? */ + if (FbEvenStip (pGC->stipple->drawable.width, + pDrawable->bitsPerPixel) && + (fbCanEvenStipple (pGC->stipple, pDrawable->bitsPerPixel))) + pPriv->evenStipple = TRUE; + if (pGC->stipple->drawable.width * pDrawable->bitsPerPixel < FB_UNIT) fbPadPixmap (pGC->stipple); } - else - pPriv->evenStipple = FALSE; } /* * Recompute reduced rop values |