diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | builtin.c | 3 |
2 files changed, 7 insertions, 2 deletions
@@ -1,5 +1,11 @@ 2016-06-26 Andrew J. Schorr <aschorr@telemetry-investments.com> + * builtin.c (do_print): There's actually no reason to test whether a + value is a number, since the STRCUR flag and stfmt value contain all + the necessary info, as in awk.h:force_string. + +2016-06-26 Andrew J. Schorr <aschorr@telemetry-investments.com> + * builtin.c (do_print): Do not use OFMT to print strnum values. We accomplish this by calling format_val for a NUMBER only if there is no string currently available, or if stfmt equals @@ -2203,8 +2203,7 @@ do_print(int nargs, int redirtype) if (tmp->type == Node_typedregex) args_array[i] = force_string(tmp); - else if ((fixtype(tmp)->flags & (NUMBER|STRING)) == NUMBER && - !((tmp->flags & STRCUR) != 0 + else if (!((tmp->flags & STRCUR) != 0 && (tmp->stfmt == -1 || tmp->stfmt == OFMTidx))) args_array[i] = format_val(OFMT, OFMTidx, tmp); } |