diff options
author | Bram Moolenaar <Bram@vim.org> | 2014-06-12 14:01:31 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2014-06-12 14:01:31 +0200 |
commit | 3be8585661f8b0a9b94e9bc1db6ebfa097c3270f (patch) | |
tree | 7dde9056432ebada1a3ce31f629eaf4f76a0d7fa /src/globals.h | |
parent | 980e58f7b324980d40ce690506897d138e5e2b70 (diff) |
updated for version 7.4.320v7.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)
Diffstat (limited to 'src/globals.h')
-rw-r--r-- | src/globals.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/globals.h b/src/globals.h index d831db9f82..b3310b3680 100644 --- a/src/globals.h +++ b/src/globals.h @@ -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 |