From ef69e2bbf07c9fbbc62695f60d2c9984c061bcc2 Mon Sep 17 00:00:00 2001 From: Randy Heit Date: Sun, 17 Apr 2011 03:43:42 +0000 Subject: [PATCH] - Fix overflows in AM_clipMline(). SVN r3182 (trunk) --- src/am_map.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/am_map.cpp b/src/am_map.cpp index 40a2f8e93..f669b4c90 100644 --- a/src/am_map.cpp +++ b/src/am_map.cpp @@ -1461,28 +1461,28 @@ bool AM_clipMline (mline_t *ml, fline_t *fl) { dy = fl->a.y - fl->b.y; dx = fl->b.x - fl->a.x; - tmp.x = fl->a.x + (dx*(fl->a.y))/dy; + tmp.x = fl->a.x + Scale(dx, fl->a.y, dy); tmp.y = 0; } else if (outside & BOTTOM) { dy = fl->a.y - fl->b.y; dx = fl->b.x - fl->a.x; - tmp.x = fl->a.x + (dx*(fl->a.y-f_h))/dy; + tmp.x = fl->a.x + Scale(dx, fl->a.y - f_h, dy); tmp.y = f_h-1; } else if (outside & RIGHT) { dy = fl->b.y - fl->a.y; dx = fl->b.x - fl->a.x; - tmp.y = fl->a.y + (dy*(f_w-1 - fl->a.x))/dx; + tmp.y = fl->a.y + Scale(dy, f_w-1 - fl->a.x, dx); tmp.x = f_w-1; } else if (outside & LEFT) { dy = fl->b.y - fl->a.y; dx = fl->b.x - fl->a.x; - tmp.y = fl->a.y + (dy*(-fl->a.x))/dx; + tmp.y = fl->a.y + Scale(dy, -fl->a.x, dx); tmp.x = 0; }