updated for version 7.3.926
Problem: Autocommands are triggered by setwinvar() et al. Missing BufEnter
on :tabclose. Duplicate WinEnter on :tabclose. Wrong order of
events for :tablose and :tabnew.
Solution: Fix these autocommand events. (Zyx)
diff --git a/src/eval.c b/src/eval.c
index 04ed2c5..ed2a9d3 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -16604,7 +16604,7 @@
if (tp != NULL && varname != NULL && varp != NULL)
{
save_curtab = curtab;
- goto_tabpage_tp(tp, TRUE);
+ goto_tabpage_tp(tp, FALSE, FALSE);
tabvarname = alloc((unsigned)STRLEN(varname) + 3);
if (tabvarname != NULL)
@@ -16617,7 +16617,7 @@
/* Restore current tabpage */
if (valid_tabpage(save_curtab))
- goto_tabpage_tp(save_curtab, TRUE);
+ goto_tabpage_tp(save_curtab, FALSE, FALSE);
}
}
@@ -16654,7 +16654,7 @@
/* set curwin to be our win, temporarily */
*save_curwin = curwin;
*save_curtab = curtab;
- goto_tabpage_tp(tp, TRUE);
+ goto_tabpage_tp(tp, FALSE, FALSE);
if (!win_valid(win))
return FAIL;
curwin = win;
@@ -16672,7 +16672,7 @@
/* Restore current tabpage and window, if still valid (autocommands can
* make them invalid). */
if (valid_tabpage(save_curtab))
- goto_tabpage_tp(save_curtab, TRUE);
+ goto_tabpage_tp(save_curtab, FALSE, FALSE);
if (win_valid(save_curwin))
{
curwin = save_curwin;