diff -u -r1.22 fbcompose.c --- programs/Xserver/fb/fbcompose.c 7 Sep 2005 01:30:23 -0000 1.22 +++ programs/Xserver/fb/fbcompose.c 15 Sep 2005 13:29:15 -0000 @@ -3198,10 +3198,10 @@ FbBits *b = bits + (ty + pict->pDrawable->y)*stride; CARD32 c = fetch(b, tx + pict->pDrawable->x, indexed); - srtot += Red(c) * *p; - sgtot += Green(c) * *p; - sbtot += Blue(c) * *p; - satot += Alpha(c) * *p; + srtot += (Red(c) * *p) >> XFIXED_BITS; + sgtot += (Green(c) * *p) >> XFIXED_BITS; + sbtot += (Blue(c) * *p) >> XFIXED_BITS; + satot += (Alpha(c) * *p) >> XFIXED_BITS; } } p++;