From ef1df7045e76b9734691473fe31fba274a550903 Mon Sep 17 00:00:00 2001 From: xwt Date: Fri, 30 Jan 2004 07:40:30 +0000 Subject: [PATCH 1/1] 2003/10/29 03:09:11 darcs-hash:20040130074030-3ac31-ac37f044e56953cde2d21bfe578aec6aab40ec2a.gz --- src/org/xwt/plat/X11.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/org/xwt/plat/X11.java b/src/org/xwt/plat/X11.java index ba739ec..b8652cb 100644 --- a/src/org/xwt/plat/X11.java +++ b/src/org/xwt/plat/X11.java @@ -169,9 +169,19 @@ public class X11 extends POSIX { } public void drawPictureAlphaOnly(Picture source, int dx, int dy, int cx1, int cy1, int cx2, int cy2, int rgb) { + cx1 = Math.max(dx, cx1); + cy1 = Math.max(dy, cy1); + cx2 = Math.min(dx + width, cx2); + cy2 = Math.min(dy + height, cy2); + if (cx1 >= cx2 || cy1 >= cy2) return; slowDrawPicture(source, dx, dy, cx1, cy1, cx2, cy2, rgb, true); } public void drawPicture(Picture source, int dx, int dy, int cx1, int cy1, int cx2, int cy2) { + cx1 = Math.max(dx, cx1); + cy1 = Math.max(dy, cy1); + cx2 = Math.min(dx + width, cx2); + cy2 = Math.min(dy + height, cy2); + if (cx1 >= cx2 || cy1 >= cy2) return; if (((X11Picture)source).doublebuf != null) fastDrawPicture(source, dx, dy, cx1, cy1, cx2, cy2); else -- 1.7.10.4