summaryrefslogtreecommitdiff
path: root/libtk/coval.c
diff options
context:
space:
mode:
Diffstat (limited to 'libtk/coval.c')
-rw-r--r--libtk/coval.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libtk/coval.c b/libtk/coval.c
index c70a607e..196e50fd 100644
--- a/libtk/coval.c
+++ b/libtk/coval.c
@@ -228,6 +228,7 @@ tkcvsovalhit(TkCitem *i, Point p)
TkCoval *o;
int w, dx, dy;
Rectangle d;
+ vlong v;
o = TKobj(TkCoval, i);
w = TKF2I(o->width)/2;
@@ -244,5 +245,7 @@ tkcvsovalhit(TkCitem *i, Point p)
dy *= dy;
/* XXX can we do this nicely without overflow and without vlongs? */
- return (vlong)(p.x*p.x)*dy + (vlong)(p.y*p.y)*dx < (vlong)dx*dy;
+ v = (vlong)(p.x*p.x)*dy;
+ v += (vlong)(p.y*p.y)*dx;
+ return v < (vlong)dx*dy;
}