Fix iterator invalidation

This commit is contained in:
Martin Šach 2024-11-27 14:57:14 +01:00
parent 56f73eb824
commit 2229fc1954

View File

@ -50,9 +50,9 @@ ExtrusionPaths split_paths(ExtrusionPaths &&paths, const PathPoint &path_point)
std::pair<ExtrusionPath, ExtrusionPath> split{ std::pair<ExtrusionPath, ExtrusionPath> split{
split_path(result[path_point.path_index], path_point.point, path_point.previous_point_on_path_index)}; split_path(result[path_point.path_index], path_point.point, path_point.previous_point_on_path_index)};
const auto path_iterator{result.begin() + path_point.path_index}; auto path_iterator{result.begin() + path_point.path_index};
result.erase(path_iterator); path_iterator = result.erase(path_iterator);
result.insert(path_iterator, split.second); path_iterator = result.insert(path_iterator, split.second);
result.insert(path_iterator, split.first); result.insert(path_iterator, split.first);
return result; return result;