Mercurial > vim
comparison src/screen.c @ 12672:4e846c9d61a8 v8.0.1214
patch 8.0.1214: accessing freed memory when EXITFREE is set
commit https://github.com/vim/vim/commit/4f1982800f0aff28df6875e718a786f6c4b11ad9
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Oct 23 21:53:30 2017 +0200
patch 8.0.1214: accessing freed memory when EXITFREE is set
Problem: Accessing freed memory when EXITFREE is set and there is more than
one tab and window. (Dominique Pelle)
Solution: Free options later. Skip redraw when exiting.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 23 Oct 2017 22:00:05 +0200 |
parents | 97f0c74976c6 |
children | 306a7a357c71 |
comparison
equal
deleted
inserted
replaced
12671:cb54d8bb3344 | 12672:4e846c9d61a8 |
---|---|
201 void | 201 void |
202 redraw_win_later( | 202 redraw_win_later( |
203 win_T *wp, | 203 win_T *wp, |
204 int type) | 204 int type) |
205 { | 205 { |
206 if (wp->w_redr_type < type) | 206 if (!exiting && wp->w_redr_type < type) |
207 { | 207 { |
208 wp->w_redr_type = type; | 208 wp->w_redr_type = type; |
209 if (type >= NOT_VALID) | 209 if (type >= NOT_VALID) |
210 wp->w_lines_valid = 0; | 210 wp->w_lines_valid = 0; |
211 if (must_redraw < type) /* must_redraw is the maximum of all windows */ | 211 if (must_redraw < type) /* must_redraw is the maximum of all windows */ |