a conceptual quick fix for #269

This commit is contained in:
Niels 2016-06-22 20:05:44 +02:00
parent 15a314abea
commit 3f97a5d5ad
2 changed files with 10 additions and 4 deletions

View file

@ -10002,13 +10002,16 @@ basic_json_parser_63:
// in a second pass, traverse the remaining elements // in a second pass, traverse the remaining elements
// remove my remaining elements // remove my remaining elements
const auto end_index = static_cast<difference_type>(result.size());
while (i < source.size()) while (i < source.size())
{ {
result.push_back(object( // add operations in reverse order to avoid invalid
// indices
result.insert(result.begin() + end_index,
{ {
{"op", "remove"}, {"op", "remove"},
{"path", path + "/" + std::to_string(i)} {"path", path + "/" + std::to_string(i)}
})); });
++i; ++i;
} }

View file

@ -9312,13 +9312,16 @@ class basic_json
// in a second pass, traverse the remaining elements // in a second pass, traverse the remaining elements
// remove my remaining elements // remove my remaining elements
const auto end_index = static_cast<difference_type>(result.size());
while (i < source.size()) while (i < source.size())
{ {
result.push_back(object( // add operations in reverse order to avoid invalid
// indices
result.insert(result.begin() + end_index,
{ {
{"op", "remove"}, {"op", "remove"},
{"path", path + "/" + std::to_string(i)} {"path", path + "/" + std::to_string(i)}
})); });
++i; ++i;
} }