From 1e477e648795e7c93460ae420eb541a15361b780 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Mon, 27 Aug 2012 14:26:50 +0200 Subject: [PATCH] Fix underflow handling in builtin string to number conversion. --- src/lj_strscan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lj_strscan.c b/src/lj_strscan.c index 31189ae7..1e4b235c 100644 --- a/src/lj_strscan.c +++ b/src/lj_strscan.c @@ -266,7 +266,7 @@ static StrScanFmt strscan_dec(const uint8_t *p, TValue *o, /* Handle simple overflow/underflow. */ if (idig > 310/2) { if (neg) setminfV(o); else setpinfV(o); return fmt; } - else if (idig < -326/2) { o->n = 0.0; return fmt; } + else if (idig < -326/2) { o->n = neg ? -0.0 : 0.0; return fmt; } /* Scale up until we have at least 17 or 18 integer part digits. */ while (idig < 9 && idig < DLEN(lo, hi)) {