mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
updated for version 7.4.369
Problem: Using freed memory when exiting while compiled with EXITFREE. Solution: Set curwin to NULL and check for that. (Dominique Pelle)
This commit is contained in:
@@ -5702,8 +5702,8 @@ buf_delete_signs(buf)
|
|||||||
signlist_T *next;
|
signlist_T *next;
|
||||||
|
|
||||||
/* When deleting the last sign need to redraw the windows to remove the
|
/* When deleting the last sign need to redraw the windows to remove the
|
||||||
* sign column. */
|
* sign column. Not when curwin is NULL (this means we're exiting). */
|
||||||
if (buf->b_signlist != NULL)
|
if (buf->b_signlist != NULL && curwin != NULL)
|
||||||
{
|
{
|
||||||
redraw_buf_later(buf, NOT_VALID);
|
redraw_buf_later(buf, NOT_VALID);
|
||||||
changed_cline_bef_curs();
|
changed_cline_bef_curs();
|
||||||
|
@@ -734,6 +734,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
369,
|
||||||
/**/
|
/**/
|
||||||
368,
|
368,
|
||||||
/**/
|
/**/
|
||||||
|
@@ -2489,6 +2489,10 @@ win_free_all()
|
|||||||
|
|
||||||
while (firstwin != NULL)
|
while (firstwin != NULL)
|
||||||
(void)win_free_mem(firstwin, &dummy, 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
|
#endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user