aboutsummaryrefslogtreecommitdiffstats
path: root/field.c
diff options
context:
space:
mode:
Diffstat (limited to 'field.c')
-rw-r--r--field.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/field.c b/field.c
index 68bd699d..4146eb0b 100644
--- a/field.c
+++ b/field.c
@@ -939,9 +939,11 @@ set_element(long num, char *s, long len, NODE *n)
it->flags |= MAYBE_NUM;
sub = make_number((AWKNUM) (num));
lhs = assoc_lookup(n, sub);
- unref(sub);
unref(*lhs);
*lhs = it;
+ if (n->astore != NULL)
+ (*n->astore)(n, sub);
+ unref(sub);
}
/* do_split --- implement split(), semantics are same as for field splitting */