changeset 3656:e92cc285632d v7.3.588

updated for version 7.3.588 Problem: Crash on NULL pointer. Solution: Fix the immediate problem by checking for NULL. (Lech Lorens)
author Bram Moolenaar <bram@vim.org>
date Fri, 06 Jul 2012 16:39:47 +0200
parents b4fa68023d41
children e024aadde309
files src/version.c src/window.c
diffstat 2 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    588,
+/**/
     587,
 /**/
     586,
--- a/src/window.c
+++ b/src/window.c
@@ -2184,7 +2184,7 @@ win_close(win, free_buf)
     }
 
 #ifdef FEAT_AUTOCMD
-    if (win->w_closing || win->w_buffer->b_closing)
+    if (win->w_closing || (win->w_buffer != NULL && win->w_buffer->b_closing))
 	return; /* window is already being closed */
     if (win == aucmd_win)
     {
@@ -3723,7 +3723,7 @@ leave_tabpage(new_curbuf)
 enter_tabpage(tp, old_curbuf, trigger_autocmds)
     tabpage_T	*tp;
     buf_T	*old_curbuf UNUSED;
-    int         trigger_autocmds UNUSED;
+    int		trigger_autocmds UNUSED;
 {
     int		old_off = tp->tp_firstwin->w_winrow;
     win_T	*next_prevwin = tp->tp_prevwin;
@@ -3868,7 +3868,7 @@ goto_tabpage(n)
     void
 goto_tabpage_tp(tp, trigger_autocmds)
     tabpage_T	*tp;
-    int         trigger_autocmds;
+    int		trigger_autocmds;
 {
     /* Don't repeat a message in another tab page. */
     set_keep_msg(NULL, 0);