fix issue-311

This commit is contained in:
andrejlevkovitch 2024-01-26 16:39:47 +01:00
parent c6cb3d4c2d
commit ed46fdefb1
4 changed files with 28 additions and 3 deletions

View File

@ -192,10 +192,10 @@ public:
// for each token create an object, if not already existing
auto unk_kw = &file.unknown_keywords;
for (auto &rt : ref_tokens) {
auto existing_object = unk_kw->find(rt);
if (existing_object == unk_kw->end())
json::json_pointer rt_ptr{"/" + rt};
if (unk_kw->contains(rt_ptr) == false)
(*unk_kw)[rt] = json::object();
unk_kw = &(*unk_kw)[rt];
unk_kw = &(*unk_kw)[rt_ptr];
}
(*unk_kw)[key] = value;
}

View File

@ -0,0 +1,3 @@
add_test_simple_schema(Issue::311
${CMAKE_CURRENT_SOURCE_DIR}/schema.json
${CMAKE_CURRENT_SOURCE_DIR}/instance.json)

View File

@ -0,0 +1,3 @@
{
"element": [1]
}

View File

@ -0,0 +1,19 @@
{
"type": "object",
"properties": {
"element": {
"$ref": "#/$defs/element"
}
},
"$defs": {
"element": {
"type": "array",
"items": [
{
"$comment": "the comment should not lead to fail of loading schema",
"type": "number"
}
]
}
}
}