On Mon, May 27, 2024 at 11:18:54 +0200, Michal Privoznik wrote: > This can happen only for cmdComplete() in interactive mode (which > I'm still not convinced is any useful for users and whether we > should support it). Definitely not useful for any normal user. Came in handy when testing stuff. But this happpens also in non-interactive mode: $ ./tools/virsh complete Segmentation fault (core dumped) > Anyway, running plain 'complete' command with > no additional arguments boils down to @text being NULL in > vshReadlineParse() which handles the case just right but is then > subsequently passed to vshCompleterFilter() which isn't prepared > for this case. > > Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx> > --- > tools/vsh.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/vsh.c b/tools/vsh.c > index c91d756885..6cc1f60d87 100644 > --- a/tools/vsh.c > +++ b/tools/vsh.c > @@ -2820,7 +2820,7 @@ vshCompleterFilter(char ***list, > newList = g_new0(char *, list_len + 1); > > for (i = 0; i < list_len; i++) { > - if (!STRPREFIX((*list)[i], text)) { > + if (text && !STRPREFIX((*list)[i], text)) { > g_clear_pointer(&(*list)[i], g_free); > continue; Reviewed-by: Peter Krempa <pkrempa@xxxxxxxxxx>