Commit 260c1159 authored by Victor Zverovich's avatar Victor Zverovich

Fix formatting of 0.0 with (#1210)

parent 9d97201e
...@@ -685,7 +685,7 @@ FMT_API bool grisu_format(Double value, buffer<char>& buf, int precision, ...@@ -685,7 +685,7 @@ FMT_API bool grisu_format(Double value, buffer<char>& buf, int precision,
FMT_ASSERT(value >= 0, "value is negative"); FMT_ASSERT(value >= 0, "value is negative");
bool fixed = (options & grisu_options::fixed) != 0; bool fixed = (options & grisu_options::fixed) != 0;
if (value <= 0) { // <= instead of == to silence a warning. if (value <= 0) { // <= instead of == to silence a warning.
if (precision < 0 || !fixed) { if (precision <= 0 || !fixed) {
exp = 0; exp = 0;
buf.push_back('0'); buf.push_back('0');
} else { } else {
......
...@@ -1452,6 +1452,7 @@ TEST(FormatterTest, FormatDouble) { ...@@ -1452,6 +1452,7 @@ TEST(FormatterTest, FormatDouble) {
} }
TEST(FormatterTest, PrecisionRounding) { TEST(FormatterTest, PrecisionRounding) {
EXPECT_EQ("0", format("{:.0f}", 0.0));
EXPECT_EQ("0", format("{:.0f}", 0.1)); EXPECT_EQ("0", format("{:.0f}", 0.1));
EXPECT_EQ("0.000", format("{:.3f}", 0.00049)); EXPECT_EQ("0.000", format("{:.3f}", 0.00049));
EXPECT_EQ("0.001", format("{:.3f}", 0.0005)); EXPECT_EQ("0.001", format("{:.3f}", 0.0005));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment