v0.2.49..v0.2.50 changeset EdgeDistanceExtractor.cpp
Garret Voltz edited this page Nov 6, 2019
·
1 revision
diff --git a/hoot-core/src/main/cpp/hoot/core/algorithms/extractors/EdgeDistanceExtractor.cpp b/hoot-core/src/main/cpp/hoot/core/algorithms/extractors/EdgeDistanceExtractor.cpp
index aee7e71..c6ced4a 100644
--- a/hoot-core/src/main/cpp/hoot/core/algorithms/extractors/EdgeDistanceExtractor.cpp
+++ b/hoot-core/src/main/cpp/hoot/core/algorithms/extractors/EdgeDistanceExtractor.cpp
@@ -167,11 +167,12 @@ std::shared_ptr<Geometry> EdgeDistanceExtractor::_toLines(const OsmMap& map,
const std::shared_ptr<const Element>& e) const
{
std::shared_ptr<Geometry> result;
- vector<Geometry*> lines;
if (e->getElementType() != ElementType::Node)
{
- LinesWaysVisitor v(lines);
+ // Create a new vector to pass ownership to multilinestring
+ vector<Geometry*>* lines = new vector<Geometry*>();
+ LinesWaysVisitor v(*lines);
v.setOsmMap(&map);
e->visitRo(map, v);
result.reset(GeometryFactory::getDefaultInstance()->createMultiLineString(lines));