From 57b1435008c6163cdc59a4155ce0a8f17ab3c85c Mon Sep 17 00:00:00 2001 From: Tanaka Akira Date: Sat, 28 Aug 1999 05:03:53 +0000 Subject: zsh-users/2529 --- Src/params.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Src/params.c b/Src/params.c index 4c462ff0a..48d6bcf8a 100644 --- a/Src/params.c +++ b/Src/params.c @@ -1697,9 +1697,14 @@ sethparam(char *s, char **val) v = NULL; } } - if (!v) - if (!(v = getvalue(&t, 1))) - return NULL; + if (!v) { + int k = opts[KSHARRAYS]; /* Remember the value of KSHARRAYS */ + opts[KSHARRAYS] = 0; /* and clear it to avoid special- */ + v = getvalue(&t, 1); /* case of $array --> ${array[0]}. */ + opts[KSHARRAYS] = k; /* OK because we can't assign to a */ + if (!v) /* slice of an association anyway, */ + return NULL; /* so ANY subscript will be wrong. */ + } setarrvalue(v, val); return v->pm; } -- cgit 1.4.1