From ebd7fdd9326cf36feda3b0ca906d7b9b8bf79cb5 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Sun, 15 Jan 2017 17:15:04 +0000 Subject: 40362: Fix setting of parameter values in compvalues --- ChangeLog | 6 ++++++ Src/Zle/computil.c | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 37b1a0b1e..02a4469c3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2017-01-15 Peter Stephenson + + * 40362: Src/Zle/computil.c: need duplicated values for setting + parameter in compvalues. Was causing obscure but surprisingly + rare crashes in value completion. + 2017-01-13 Eric Cook * earnestly: 40355: Completion/Unix/Command/_mpc: improve diff --git a/Src/Zle/computil.c b/Src/Zle/computil.c index 7bf95351f..5b9ceec1a 100644 --- a/Src/Zle/computil.c +++ b/Src/Zle/computil.c @@ -3569,8 +3569,8 @@ bin_compvalues(char *nam, char **args, UNUSED(Options ops), UNUSED(int func)) Cvval val = cv_get_val(cv_laststate.d, args[1]); if (val && val->arg) { - setsparam(args[2], val->arg->descr); - setsparam(args[3], val->arg->action); + setsparam(args[2], ztrdup(val->arg->descr)); + setsparam(args[3], ztrdup(val->arg->action)); if (args[4]) setsparam(args[4], ztrdup(val->name)); -- cgit 1.4.1