fix(json_render): json_render is not accurate enough for extremely small numbers. eg: fmt::format_to(std::back_inserter(buffer), FMT_COMPILE({}), double(0.0000000000017114087924596788)); you will get a result of 1.7114087924, this is a completely wrong result.
This commit is contained in:
parent
376282d946
commit
b372611e86
@ -56,7 +56,10 @@ template <typename Out> struct Renderer
|
||||
size_t decimalpos = std::find(buffer.begin(), buffer.end(), '.') - buffer.begin();
|
||||
if (buffer.size() > (decimalpos + 10))
|
||||
{
|
||||
buffer.resize(decimalpos + 10);
|
||||
buffer.clear();
|
||||
fmt::format_to(std::back_inserter(buffer), FMT_COMPILE("{0:.10f}"), number.value);
|
||||
|
||||
// buffer.resize(decimalpos + 10);
|
||||
}
|
||||
|
||||
write(buffer.data(), buffer.size());
|
||||
|
||||
Loading…
Reference in New Issue
Block a user