summaryrefslogtreecommitdiffhomepage
path: root/src/fmt_fp.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2021-05-24 11:49:16 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2021-05-24 11:50:30 +0900
commita44ca2e9bea87d266713613a15c3c7f0557518a2 (patch)
tree28b96114bc49a69e1d18afa3400b32854828c050 /src/fmt_fp.c
parentd121075e49d13c8c5ee0872a7a2bffcca7d2810b (diff)
downloadmruby-a44ca2e9bea87d266713613a15c3c7f0557518a2.tar.gz
mruby-a44ca2e9bea87d266713613a15c3c7f0557518a2.zip
fmt_fp.c: exponential may be bigger than `100`.
Diffstat (limited to 'src/fmt_fp.c')
-rw-r--r--src/fmt_fp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/fmt_fp.c b/src/fmt_fp.c
index ede94c721..cbf1db18f 100644
--- a/src/fmt_fp.c
+++ b/src/fmt_fp.c
@@ -356,6 +356,10 @@ mrb_format_float(mrb_float f, char *buf, size_t buf_size, char fmt, int prec, ch
if (e_sign) {
*s++ = e_char;
*s++ = e_sign;
+ if (e >= 100) {
+ *s++ = '0' + (e / 100);
+ e %= 100;
+ }
*s++ = '0' + (e / 10);
*s++ = '0' + (e % 10);
}