From 1b1b206ff6bb5972500f94221e92ff80bf4ab35a Mon Sep 17 00:00:00 2001 From: Alexander Borsuk Date: Tue, 13 Jun 2023 23:17:42 +0200 Subject: [PATCH] Fixed UB/assert when parsing GPX Signed-off-by: Alexander Borsuk --- kml/serdes_gpx.cpp | 2 +- kml/serdes_gpx.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/kml/serdes_gpx.cpp b/kml/serdes_gpx.cpp index 3dd5c25c51..cc91312f8e 100644 --- a/kml/serdes_gpx.cpp +++ b/kml/serdes_gpx.cpp @@ -91,7 +91,7 @@ bool GpxParser::MakeValid() bool GpxParser::Push(std::string_view tag) { - m_tags.push_back(tag); + m_tags.push_back(std::string{tag}); if (GetTagFromEnd(0) == gpx::kWpt) m_geometryType = GEOMETRY_TYPE_POINT; else if (GetTagFromEnd(0) == gpx::kTrkPt || GetTagFromEnd(0) == gpx::kRtePt) diff --git a/kml/serdes_gpx.hpp b/kml/serdes_gpx.hpp index 9c780b4d9c..0c118920aa 100644 --- a/kml/serdes_gpx.hpp +++ b/kml/serdes_gpx.hpp @@ -46,7 +46,7 @@ private: CategoryData m_compilationData; CategoryData * m_categoryData; // never null - std::vector m_tags; + std::vector m_tags; GeometryType m_geometryType; MultiGeometry m_geometry; uint32_t m_color;