From f4f1956724f70a7def3bcf8a2d77cf1f8c9dd28c Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Wed, 28 Nov 2012 18:22:11 +0100 Subject: updated for version 7.3.739 Problem: Computing number of lines may have an integer overflow. Solution: Check for MAXCOL explicitly. (Dominique Pelle) --- src/move.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/move.c') diff --git a/src/move.c b/src/move.c index 21a74b8adc..5c8257449c 100644 --- a/src/move.c +++ b/src/move.c @@ -2576,7 +2576,7 @@ get_scroll_overlap(lp, dir) else topline_back(lp); h2 = lp->height; - if (h2 + h1 > min_height) + if (h2 == MAXCOL || h2 + h1 > min_height) { *lp = loff0; /* no overlap */ return; @@ -2588,7 +2588,7 @@ get_scroll_overlap(lp, dir) else topline_back(lp); h3 = lp->height; - if (h3 + h2 > min_height) + if (h3 == MAXCOL || h3 + h2 > min_height) { *lp = loff0; /* no overlap */ return; @@ -2600,7 +2600,7 @@ get_scroll_overlap(lp, dir) else topline_back(lp); h4 = lp->height; - if (h4 + h3 + h2 > min_height || h3 + h2 + h1 > min_height) + if (h4 == MAXCOL || h4 + h3 + h2 > min_height || h3 + h2 + h1 > min_height) *lp = loff1; /* 1 line overlap */ else *lp = loff2; /* 2 lines overlap */ -- cgit v1.2.3