From 07199603b44327b9436ef0f878151a66243b45da Mon Sep 17 00:00:00 2001 From: tron Date: Sat, 2 Sep 2006 21:52:06 +0000 Subject: (svn r6351) -Fix: Due to some off-by-one errors the width or height of a clipping rectangle could become 0, which isn't sensible. This should fix a very rare and hard to trigger assertion in GfxFillRect() --- gfx.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gfx.c b/gfx.c index d0f6fd044..cfd9fa58e 100644 --- a/gfx.c +++ b/gfx.c @@ -1862,7 +1862,7 @@ bool FillDrawPixelInfo(DrawPixelInfo *n, int left, int top, int width, int heigh if ((left -= o->left) < 0) { width += left; - if (width < 0) return false; + if (width <= 0) return false; n->left = -left; left = 0; } else { @@ -1871,13 +1871,13 @@ bool FillDrawPixelInfo(DrawPixelInfo *n, int left, int top, int width, int heigh if (width > o->width - left) { width = o->width - left; - if (width < 0) return false; + if (width <= 0) return false; } n->width = width; if ((top -= o->top) < 0) { height += top; - if (height < 0) return false; + if (height <= 0) return false; n->top = -top; top = 0; } else { @@ -1888,7 +1888,7 @@ bool FillDrawPixelInfo(DrawPixelInfo *n, int left, int top, int width, int heigh if (height > o->height - top) { height = o->height - top; - if (height < 0) return false; + if (height <= 0) return false; } n->height = height; -- cgit v1.2.3-54-g00ecf