From 7674fd5936de3190f1fd3bba3ef82370a2941064 Mon Sep 17 00:00:00 2001 From: dequis Date: Fri, 29 Jan 2016 10:40:18 -0300 Subject: completion: Fix crash when the complist provided by a script has nulls Can be reproduced with aspell_complete.pl 1.00 by setting an invalid dictionary with "/set spell_dict a" --- src/fe-common/core/completion.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src') diff --git a/src/fe-common/core/completion.c b/src/fe-common/core/completion.c index a4715d23..1e7833a4 100644 --- a/src/fe-common/core/completion.c +++ b/src/fe-common/core/completion.c @@ -217,6 +217,11 @@ char *word_complete(WINDOW_REC *window, const char *line, int *pos, int erase, i want_space = TRUE; signal_emit("complete word", 5, &complist, window, word, linestart, &want_space); last_want_space = want_space; + + if (complist != NULL) { + /* Remove all nulls (from the signal) before doing further processing */ + complist = g_list_remove_all(g_list_first(complist), NULL); + } } g_free(linestart); -- cgit v1.2.3