diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-01-08 20:00:04 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-01-08 20:00:04 +0100 |
commit | c695cec4698b41d7b9555efdd47dda9b1945d3ae (patch) | |
tree | 2209e0cee05b0b4d806652f73ceacea0124268d8 | |
parent | 6247361101dcccc0c877e90ad67cd0cc83df7c68 (diff) |
patch 8.0.0159: crash on startup when updating tablinev8.0.0159
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.
-rw-r--r-- | src/ex_getln.c | 2 | ||||
-rw-r--r-- | src/screen.c | 4 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/src/ex_getln.c b/src/ex_getln.c index 5d098cca3f..cf99ae2a83 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 ee61a01aea..016e7ee3e9 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 38be7db00e..f1a36da0ce 100644 --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 159, +/**/ 158, /**/ 157, |