From 4202c90b6d6f1f08cdaf56180f589a00395c32be Mon Sep 17 00:00:00 2001 From: Daniel Shahaf Date: Mon, 30 Nov 2015 03:21:28 +0000 Subject: 37254: No functional change: change code layout in preparation for 37253. --- ChangeLog | 3 +++ Src/params.c | 12 ++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5f62ce1c8..e23364272 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2015-11-30 Daniel Shahaf + * 37254: Src/params.c: No functional change: change code layout + in preparation for 37253. + * 37250: Src/params.c: No functional change: rename local variables. diff --git a/Src/params.c b/Src/params.c index ee1527153..d8bf83d0e 100644 --- a/Src/params.c +++ b/Src/params.c @@ -2537,6 +2537,7 @@ setarrvalue(Value v, char **val) freearray(val); return; } + if (v->start == 0 && v->end == -1) { if (PM_TYPE(v->pm->node.flags) == PM_HASHED) arrhashsetfn(v->pm, val, 0); @@ -2545,18 +2546,17 @@ setarrvalue(Value v, char **val) } else if (v->start == -1 && v->end == 0 && PM_TYPE(v->pm->node.flags) == PM_HASHED) { arrhashsetfn(v->pm, val, 1); + } else if ((PM_TYPE(v->pm->node.flags) == PM_HASHED)) { + freearray(val); + zerr("%s: attempt to set slice of associative array", + v->pm->node.nam); + return; } else { char **old, **new, **p, **q, **r; int pre_assignment_length; int post_assignment_length; int i; - if ((PM_TYPE(v->pm->node.flags) == PM_HASHED)) { - freearray(val); - zerr("%s: attempt to set slice of associative array", - v->pm->node.nam); - return; - } if ((v->flags & VALFLAG_INV) && unset(KSHARRAYS)) { if (v->start > 0) v->start--; -- cgit 1.4.1