From: Bram Moolenaar Date: Sun, 8 Jan 2017 19:00:04 +0000 (+0100) Subject: patch 8.0.0159: crash on startup when updating tabline X-Git-Tag: v8.0.0159 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c695cec4698b41d7b9555efdd47dda9b1945d3ae;p=vim patch 8.0.0159: crash on startup when updating tabline Problem: Using a NULL pointer when using feedkeys() to trigger drawing a tabline. Solution: Skip drawing a tabline if TabPageIdxs is NULL. (Dominique Pelle) Also fix recursing into getcmdline() from the cmd window. --- diff --git a/src/ex_getln.c b/src/ex_getln.c index 5d098cca3..cf99ae2a8 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -772,7 +772,9 @@ getcmdline( /* * Open a window to edit the command line (and history). */ + save_cmdline(&save_ccline); c = ex_window(); + restore_cmdline(&save_ccline); some_key_typed = TRUE; } } diff --git a/src/screen.c b/src/screen.c index ee61a01ae..016e7ee3e 100644 --- a/src/screen.c +++ b/src/screen.c @@ -3650,7 +3650,7 @@ win_line( if (fdc > 0) { /* Draw the 'foldcolumn'. Allocate a buffer, "extra" may - * already be in used. */ + * already be in use. */ p_extra_free = alloc(12 + 1); if (p_extra_free != NULL) @@ -10344,6 +10344,8 @@ draw_tabline(void) #endif ); + if (ScreenLines == NULL) + return; redraw_tabline = FALSE; #ifdef FEAT_GUI_TABLINE diff --git a/src/version.c b/src/version.c index 38be7db00..f1a36da0c 100644 --- a/src/version.c +++ b/src/version.c @@ -764,6 +764,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 159, /**/ 158, /**/