From ad56692b16c3a56236853816ddf38e14de034349 Mon Sep 17 00:00:00 2001 From: Bart Schaefer Date: Wed, 3 Nov 2010 22:40:33 +0000 Subject: 28384: improve error message on assignment to a field of a read-only hash. CVS ---------------------------------------------------------------------- --- Src/params.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'Src/params.c') diff --git a/Src/params.c b/Src/params.c index f49a07f1a..7ac33b912 100644 --- a/Src/params.c +++ b/Src/params.c @@ -2591,8 +2591,15 @@ assignsparam(char *s, char *val, int flags) *ss = '\0'; if (!(v = getvalue(&vbuf, &s, 1))) createparam(t, PM_ARRAY); - else + else { + if (v->pm->node.flags & PM_READONLY) { + zerr("read-only variable: %s", v->pm->node.nam); + *ss = '['; + zsfree(val); + return NULL; + } flags &= ~ASSPM_WARN_CREATE; + } *ss = '['; v = NULL; } else { -- cgit 1.4.1