Make 0-width precision be 0

This commit is contained in:
Evil Eye 2025-08-21 08:57:00 +02:00
parent 6453d3e201
commit 86605f3531

View File

@ -4,7 +4,7 @@
namespace namespace
{ {
int parseNumber(std::size_t& i, std::string_view m) int parseNumber(std::size_t& i, std::string_view m, int fallback)
{ {
if (i < m.size() && m[i] >= '0' && m[i] <= '9') if (i < m.size() && m[i] >= '0' && m[i] <= '9')
{ {
@ -16,7 +16,7 @@ namespace
if (ec == std::errc()) if (ec == std::errc())
return parsed; return parsed;
} }
return -1; return fallback;
} }
} }
@ -43,7 +43,7 @@ namespace Misc
++i; ++i;
} }
int width = parseNumber(i, m); int width = parseNumber(i, m, -1);
if (i < m.size()) if (i < m.size())
{ {
@ -51,7 +51,7 @@ namespace Misc
if (m[i] == '.') if (m[i] == '.')
{ {
++i; ++i;
precision = parseNumber(i, m); precision = parseNumber(i, m, 0);
} }
if (i < m.size()) if (i < m.size())