mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
updated for version 7.4.645
Problem: When splitting the window in a BufAdd autocommand while still in the first, empty buffer the window count is wrong. Solution: Do not reset b_nwindows to zero and don't increment it.
This commit is contained in:
@@ -1794,7 +1794,6 @@ buflist_new(ffname, sfname, lnum, flags)
|
||||
if (aborting()) /* autocmds may abort script processing */
|
||||
return NULL;
|
||||
#endif
|
||||
/* buf->b_nwindows = 0; why was this here? */
|
||||
free_buffer_stuff(buf, FALSE); /* delete local variables et al. */
|
||||
|
||||
/* Init the options. */
|
||||
@@ -1872,6 +1871,9 @@ buflist_new(ffname, sfname, lnum, flags)
|
||||
#ifdef FEAT_AUTOCMD
|
||||
if (!(flags & BLN_DUMMY))
|
||||
{
|
||||
/* Tricky: these autocommands may change the buffer list. They could
|
||||
* also split the window with re-using the one empty buffer. This may
|
||||
* result in unexpectedly losing the empty buffer. */
|
||||
apply_autocmds(EVENT_BUFNEW, NULL, NULL, FALSE, buf);
|
||||
if (!buf_valid(buf))
|
||||
return NULL;
|
||||
|
Reference in New Issue
Block a user