Mercurial > vim
comparison src/fold.c @ 22306:86696c617f70 v8.2.1702
patch 8.2.1702: crash when using undo after deleting folded lines
Commit: https://github.com/vim/vim/commit/da697645d5917eb3d4168c06c3442bef9fb746bf
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Sep 17 19:36:04 2020 +0200
patch 8.2.1702: crash when using undo after deleting folded lines
Problem: Crash when using undo after deleting folded lines.
Solution: Check for NULL pointer. (closes https://github.com/vim/vim/issues/6968)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 17 Sep 2020 19:45:04 +0200 |
parents | 67d3826948ad |
children | 3c72820f88b2 |
comparison
equal
deleted
inserted
replaced
22305:fc3288b65910 | 22306:86696c617f70 |
---|---|
2420 */ | 2420 */ |
2421 if (getlevel == foldlevelMarker && flp->start <= flp->lvl - level | 2421 if (getlevel == foldlevelMarker && flp->start <= flp->lvl - level |
2422 && flp->lvl > 0) | 2422 && flp->lvl > 0) |
2423 { | 2423 { |
2424 (void)foldFind(gap, startlnum - 1, &fp); | 2424 (void)foldFind(gap, startlnum - 1, &fp); |
2425 if (fp >= ((fold_T *)gap->ga_data) + gap->ga_len | 2425 if (fp != NULL && (fp >= ((fold_T *)gap->ga_data) + gap->ga_len |
2426 || fp->fd_top >= startlnum) | 2426 || fp->fd_top >= startlnum)) |
2427 fp = NULL; | 2427 fp = NULL; |
2428 } | 2428 } |
2429 | 2429 |
2430 /* | 2430 /* |
2431 * Loop over all lines in this fold, or until "bot" is hit. | 2431 * Loop over all lines in this fold, or until "bot" is hit. |