diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-03-23 21:53:35 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-03-23 21:53:35 +0100 |
commit | 9d20ce6970158de69202a82529d9e97827a9e71b (patch) | |
tree | 764737cb525e82bb948fe6aa7cf976f514cfdff7 /src | |
parent | a37ffaa5e0a47e2db27bc0cc23f49e7094f47f3b (diff) | |
download | vim-git-9d20ce6970158de69202a82529d9e97827a9e71b.tar.gz |
patch 8.0.0503: endless loop in updating folds with 32 bit intsv8.0.0503
Problem: Endless loop in updating folds with 32 bit ints.
Solution: Subtract from LHS instead of add to the RHS. (Matthew Malcomson)
Diffstat (limited to 'src')
-rw-r--r-- | src/fold.c | 2 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/fold.c b/src/fold.c index 305173918..8c66b78cd 100644 --- a/src/fold.c +++ b/src/fold.c @@ -2755,7 +2755,7 @@ foldUpdateIEMSRecurse( /* End of fold found, update the length when it got shorter. */ if (fp->fd_len != flp->lnum - fp->fd_top) { - if (fp->fd_top + fp->fd_len > bot + 1) + if (fp->fd_top + fp->fd_len - 1 > bot) { /* fold continued below bot */ if (getlevel == foldlevelMarker diff --git a/src/version.c b/src/version.c index 4b2ff6f5d..b6cc7d65a 100644 --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 503, +/**/ 502, /**/ 501, |