提交 3716a2fb 编写于 作者: N Niels

Merge branch 'develop' into feature/jsontestsuite

......@@ -9121,6 +9121,13 @@ basic_json_parser_66:
{
// parse with strtod
result.m_value.number_float = str_to_float_t(static_cast<number_float_t*>(nullptr), NULL);
// replace infinity and NAN by null
if (not std::isfinite(result.m_value.number_float))
{
type = value_t::null;
result.m_value = basic_json::json_value();
}
}
// save the type
......
......@@ -8270,6 +8270,13 @@ class basic_json
{
// parse with strtod
result.m_value.number_float = str_to_float_t(static_cast<number_float_t*>(nullptr), NULL);
// replace infinity and NAN by null
if (not std::isfinite(result.m_value.number_float))
{
type = value_t::null;
result.m_value = basic_json::json_value();
}
}
// save the type
......
......@@ -489,4 +489,10 @@ TEST_CASE("regression tests")
j["/this/that/2"_json_pointer] = 27;
CHECK(j == json({{"this", {{"that", {nullptr, nullptr, 27}}}}}));
}
SECTION("issue #329 - serialized value not always can be parsed")
{
json j = json::parse("22e2222");
CHECK(j == json());
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册