From 18c6b0f85db6683f1d0789e800acfdd35da3ce07 Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Mon, 13 Jun 2016 18:39:10 -0400 Subject: Fix usage of scalar type flag bits and fix some bugs in numeric conversions and lint checks. --- gawkapi.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'gawkapi.c') diff --git a/gawkapi.c b/gawkapi.c index 8ee6543b..b961f797 100644 --- a/gawkapi.c +++ b/gawkapi.c @@ -431,21 +431,17 @@ node_to_awk_value(NODE *node, awk_value_t *val, awk_valtype_t wanted) val->val_type = AWK_NUMBER; (void) force_number(node); - if ((node->flags & NUMCUR) != 0) { - val->num_value = get_number_d(node); - ret = awk_true; - } + val->num_value = get_number_d(node); + ret = awk_true; break; case AWK_STRING: val->val_type = AWK_STRING; (void) force_string(node); - if ((node->flags & STRCUR) != 0) { - val->str_value.str = node->stptr; - val->str_value.len = node->stlen; - ret = awk_true; - } + val->str_value.str = node->stptr; + val->str_value.len = node->stlen; + ret = awk_true; break; case AWK_SCALAR: -- cgit v1.2.3 From e8ba153719506aabfffc911d2519727a3bfc5a36 Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Tue, 14 Jun 2016 15:14:37 -0400 Subject: Fix gawkapi node_to_awk_value to check scalar type correctly. --- gawkapi.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gawkapi.c') diff --git a/gawkapi.c b/gawkapi.c index b961f797..3d9f61a9 100644 --- a/gawkapi.c +++ b/gawkapi.c @@ -445,6 +445,7 @@ node_to_awk_value(NODE *node, awk_value_t *val, awk_valtype_t wanted) break; case AWK_SCALAR: + fixtype(node); if ((node->flags & NUMBER) != 0) { val->val_type = AWK_NUMBER; } else if ((node->flags & STRING) != 0) { @@ -456,6 +457,7 @@ node_to_awk_value(NODE *node, awk_value_t *val, awk_valtype_t wanted) case AWK_UNDEFINED: /* return true and actual type for request of undefined */ + fixtype(node); if (node == Nnull_string) { val->val_type = AWK_UNDEFINED; ret = awk_true; -- cgit v1.2.3 From 92b5353bf364897f02003c4116cabe6d48ea17eb Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Thu, 30 Jun 2016 09:59:47 -0400 Subject: Use new STFMT_UNUSED define to improve code clarity, and fix some minor stfmt issues. --- gawkapi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gawkapi.c') diff --git a/gawkapi.c b/gawkapi.c index 3d9f61a9..fa960de7 100644 --- a/gawkapi.c +++ b/gawkapi.c @@ -686,7 +686,7 @@ api_sym_update_scalar(awk_ext_id_t id, /* make_str_node(s, l, ALREADY_MALLOCED): */ r->numbr = 0; r->flags = (MALLOC|STRING|STRCUR); - r->stfmt = -1; + r->stfmt = STFMT_UNUSED; r->stptr = value->str_value.str; r->stlen = value->str_value.len; return awk_true; -- cgit v1.2.3