From 64713347f812434965f48bfea547222357cb38ba Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Tue, 27 May 2003 18:28:20 +0000 Subject: [PATCH] better math to find the area in teh child to update --- render2/paint.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/render2/paint.c b/render2/paint.c index ebb87697..64737761 100644 --- a/render2/paint.c +++ b/render2/paint.c @@ -51,12 +51,14 @@ void RrPaintArea(struct RrSurface *sur, int x, int y, int w, int h) if (RrSurfaceX(child) < x+w && RrSurfaceX(child) + RrSurfaceWidth(child) > x && RrSurfaceY(child) < y+h && - RrSurfaceY(child) + RrSurfaceHeight(child)) + RrSurfaceY(child) + RrSurfaceHeight(child) > y) RrPaintArea(child, MAX(0, x-RrSurfaceX(child)), MAX(0, y-RrSurfaceY(child)), - MIN(RrSurfaceWidth(child), w-(x-RrSurfaceX(child))), - MIN(RrSurfaceHeight(child), h-(y-RrSurfaceY(child)))); + MIN(RrSurfaceWidth(child), + w - MAX(0, (RrSurfaceX(child)-x))), + MIN(RrSurfaceHeight(child), + h - MAX(0, (RrSurfaceY(child)-y)))); } if (!RrSurfaceVisible(sur)) return; -- 2.34.1