Alexandre Julliard : gdi32: Avoid overflows for invalid coordinates in line clipping.
Alexandre Julliard
julliard at winehq.org
Wed Feb 22 14:27:39 CST 2012
Module: wine
Branch: master
Commit: 556267bde446412741e5c209d4090f4a3761e03f
URL: http://source.winehq.org/git/wine.git/?a=commit;h=556267bde446412741e5c209d4090f4a3761e03f
Author: Alexandre Julliard <julliard at winehq.org>
Date: Wed Feb 22 11:27:58 2012 +0100
gdi32: Avoid overflows for invalid coordinates in line clipping.
---
dlls/gdi32/dibdrv/objects.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/dlls/gdi32/dibdrv/objects.c b/dlls/gdi32/dibdrv/objects.c
index b6e50cb..a9d6ca5 100644
--- a/dlls/gdi32/dibdrv/objects.c
+++ b/dlls/gdi32/dibdrv/objects.c
@@ -372,7 +372,8 @@ static inline DWORD calc_outcode(const POINT *pt, const RECT *clip)
int clip_line(const POINT *start, const POINT *end, const RECT *clip,
const bres_params *params, POINT *pt1, POINT *pt2)
{
- int m, n;
+
+ INT64 m, n; /* 64-bit to avoid overflows (FIXME: find a more efficient way) */
BOOL clipped = FALSE;
DWORD start_oc, end_oc;
const int bias = params->bias;
More information about the wine-cvs
mailing list