vim-patch:7.4.369

Problem:    Using freed memory when exiting while compiled with EXITFREE.
Solution:   Set curwin to NULL and check for that. (Dominique Pelle)

https://code.google.com/p/vim/source/detail?r=v7-4-369
This commit is contained in:
Shougo Matsushita 2014-09-16 19:32:25 +09:00
parent fd60b8ee7e
commit aa66f2487e
3 changed files with 7 additions and 3 deletions

View File

@ -4425,8 +4425,8 @@ linenr_T buf_delsign(
}
/* When deleted the last sign needs to redraw the windows to remove the
* sign column. */
if (buf->b_signlist == NULL) {
* sign column. Not when curwin is NULL (this means we're exiting). */
if (buf->b_signlist != NULL && curwin != NULL) {
redraw_buf_later(buf, NOT_VALID);
changed_cline_bef_curs();
}

View File

@ -226,7 +226,7 @@ static int included_patches[] = {
//372,
371,
370,
//369,
369,
368,
367,
//366,

View File

@ -2001,6 +2001,10 @@ void win_free_all(void)
while (firstwin != NULL)
(void)win_free_mem(firstwin, &dummy, NULL);
// No window should be used after this. Set curwin to NULL to crash
// instead of using freed memory.
curwin = NULL;
}
#endif