diff --git a/GeoLib/Polyline.cpp b/GeoLib/Polyline.cpp
index 2c0525dc5066460d452c9b1db26f9f1e6b5617ad..1b47e65fbfc456f6d46b9b3e5bfd4ac790de5f02 100644
--- a/GeoLib/Polyline.cpp
+++ b/GeoLib/Polyline.cpp
@@ -347,6 +347,7 @@ Polyline* Polyline::constructPolylineFromSegments(const std::vector<Polyline*> &
         if (!ply_found)
         {
             ERR("Error in Polyline::contructPolylineFromSegments() - Not all segments are connected.");
+            delete new_ply;
             new_ply = nullptr;
             break;
         }