Fix typos which caused exaCompositeRects() to use an incorrect damage region.

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=18065 .

Also, it can bail if either width or height of the bounding box is <= 0, not
only if both of them are.
This commit is contained in:
Michel Dänzer 2008-11-08 01:25:14 +01:00
parent 59f9fb4b8c
commit 21c116219c

View File

@ -492,17 +492,17 @@ exaCompositeRects(CARD8 op,
r = rects;
while (n--) {
int rect_x2 = r->xDst + r->width;
int rect_y2 = r->yDst + r->width;
int rect_y2 = r->yDst + r->height;
if (r->xDst < x1) x1 = r->xDst;
if (r->xDst < y1) y1 = r->xDst;
if (r->yDst < y1) y1 = r->yDst;
if (rect_x2 > x2) x2 = rect_x2;
if (rect_y2 > y2) y2 = rect_y2;
r++;
}
if (x2 <= x1 && y2 <= y1)
if (x2 <= x1 || y2 <= y1)
return;
box.x1 = x1;