1
0
forked from aniani/vim

updated for version 7.4.320

Problem:    Possible crash when an BufLeave autocommand deletes the buffer.
Solution:   Check for the window pointer being valid.  Postpone freeing the
            window until autocommands are done. (Yasuhiro Matsumoto)
This commit is contained in:
Bram Moolenaar
2014-06-12 14:01:31 +02:00
parent 980e58f7b3
commit 3be8585661
5 changed files with 27 additions and 6 deletions

View File

@@ -387,10 +387,12 @@ EXTERN int keep_filetype INIT(= FALSE); /* value for did_filetype when
* which one is preferred, au_new_curbuf is set to it */
EXTERN buf_T *au_new_curbuf INIT(= NULL);
/* When deleting the buffer and autocmd_busy is TRUE, do not free the buffer
* but link it in the list starting with au_pending_free_buf, using b_next.
* Free the buffer when autocmd_busy is set to FALSE. */
/* When deleting a buffer/window and autocmd_busy is TRUE, do not free the
* buffer/window. but link it in the list starting with
* au_pending_free_buf/ap_pending_free_win, using b_next/w_next.
* Free the buffer/window when autocmd_busy is being set to FALSE. */
EXTERN buf_T *au_pending_free_buf INIT(= NULL);
EXTERN win_T *au_pending_free_win INIT(= NULL);
#endif
#ifdef FEAT_MOUSE