summaryrefslogtreecommitdiff
path: root/mpfr.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2020-07-05 21:36:01 +0300
committerArnold D. Robbins <arnold@skeeve.com>2020-07-05 21:36:01 +0300
commitc31e4636edc5e444f9815295f373d4b1170ef260 (patch)
tree32c42ef2b4eda898a5f01eee118870b531399846 /mpfr.c
parentf60ced696bc752cdc1a1f45ce2cc9d6149be7087 (diff)
downloadgawk-c31e4636edc5e444f9815295f373d4b1170ef260.tar.gz
MPFR bug fixes in some corner cases.
Diffstat (limited to 'mpfr.c')
-rw-r--r--mpfr.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/mpfr.c b/mpfr.c
index e1712863..be2b81b5 100644
--- a/mpfr.c
+++ b/mpfr.c
@@ -293,6 +293,14 @@ force_mpnum(NODE *n, int do_nondec, int use_locale)
else
cp1 = cp;
+ /*
+ * Maybe "+" or "-" was the field. mpg_strtoui
+ * won't check for that and set errno, so we have
+ * to check manuall.
+ */
+ if (*cp1 == '\0')
+ return false;
+
if (do_nondec)
base = get_numbase(cp1, cpend - cp1, use_locale);