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;