diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2017-04-12 12:16:41 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2017-04-12 12:16:41 +0300 |
commit | 3006a420c22133e40e6a0aeaeb9bcd402b0754bd (patch) | |
tree | f9700b1703106dd56cb392da6380611c4917cf99 /mpfr.c | |
parent | 4b68f4ebe7381644e5652a88a5104a10f10f66a7 (diff) | |
parent | 8f83ab76a1d8861d9a992290f2691443d5169c89 (diff) | |
download | egawk-3006a420c22133e40e6a0aeaeb9bcd402b0754bd.tar.gz egawk-3006a420c22133e40e6a0aeaeb9bcd402b0754bd.tar.bz2 egawk-3006a420c22133e40e6a0aeaeb9bcd402b0754bd.zip |
Merge branch 'master' into feature/api-mpfr
Diffstat (limited to 'mpfr.c')
-rw-r--r-- | mpfr.c | 6 |
1 files changed, 2 insertions, 4 deletions
@@ -291,7 +291,7 @@ force_mpnum(NODE *n, int do_nondec, int use_locale) cp1 = cp; if (do_nondec) - base = get_numbase(cp1, use_locale); + base = get_numbase(cp1, cpend - cp1, use_locale); if (! mpg_maybe_float(cp1, use_locale)) { mpg_zero(n); @@ -369,12 +369,10 @@ mpg_format_val(const char *format, int index, NODE *s) } s->flags = oflags; s->stlen = r->stlen; - if ((s->flags & STRCUR) != 0) + if ((s->flags & (MALLOC|STRCUR)) == (MALLOC|STRCUR)) efree(s->stptr); s->stptr = r->stptr; freenode(r); /* Do not unref(r)! We want to keep s->stptr == r->stpr. */ - - s->flags |= STRCUR; free_wstr(s); return s; } |