Changed direct calls to strtod to use StringToNumber

StringToNumber will correctly use locale-insensitive functions
when available.

Change-Id: I6bde11039a541634186f8f791012af2eb0d86b8d
This commit is contained in:
Wouter van Oortmerssen
2020-01-09 11:47:02 -08:00
parent 718351831d
commit 55686100aa
3 changed files with 25 additions and 8 deletions

View File

@@ -491,7 +491,11 @@ class Reference {
case FBT_INDIRECT_UINT:
return static_cast<double>(ReadUInt64(Indirect(), byte_width_));
case FBT_NULL: return 0.0;
case FBT_STRING: return strtod(AsString().c_str(), nullptr);
case FBT_STRING: {
double d;
flatbuffers::StringToNumber(AsString().c_str(), &d);
return d;
}
case FBT_VECTOR: return static_cast<double>(AsVector().size());
case FBT_BOOL:
return static_cast<double>(ReadUInt64(data_, parent_width_));