aboutsummaryrefslogtreecommitdiffstats
path: root/field.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2020-07-03 11:16:36 +0300
committerArnold D. Robbins <arnold@skeeve.com>2020-07-03 11:16:36 +0300
commit30a60fc794e84da90fed6871ff27d668fe4a391e (patch)
treea6294c9607f4964212c10daa3b1dde3501bf4d86 /field.c
parentc997a0e5d3857eb48e4292f0b42da9b3bbb985fb (diff)
parentf60ced696bc752cdc1a1f45ce2cc9d6149be7087 (diff)
downloadegawk-30a60fc794e84da90fed6871ff27d668fe4a391e.tar.gz
egawk-30a60fc794e84da90fed6871ff27d668fe4a391e.tar.bz2
egawk-30a60fc794e84da90fed6871ff27d668fe4a391e.zip
Merge branch 'gawk-5.1-stable'
Diffstat (limited to 'field.c')
-rw-r--r--field.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/field.c b/field.c
index 0e84447a..c21046b9 100644
--- a/field.c
+++ b/field.c
@@ -90,6 +90,8 @@ Regexp *FPAT_re_no_case = NULL;
Regexp *FPAT_regexp = NULL;
NODE *Null_field = NULL;
+#define clear_mpfr(n) ((n)->flags &= ~(MPFN | MPZN | NUMCUR))
+
/* init_fields --- set up the fields array to start with */
void
@@ -230,6 +232,7 @@ rebuild_record()
}
n->stptr = cops;
+ clear_mpfr(n);
unref(r);
fields_arr[i] = n;
assert((n->flags & WSTRCUR) == 0);
@@ -347,6 +350,11 @@ reset_record()
}
}
+/*
+ * purge_record --- throw away the fields, make sure that
+ * individual nodes remain valid.
+ */
+
static void
purge_record()
{