diff --git a/OpenRoadEd/OpenDrive/OpenDriveXmlWriter.cpp b/OpenRoadEd/OpenDrive/OpenDriveXmlWriter.cpp
index 07dcf3c669578a79a71576a3d26c6657a9dc0995..1902202f44f93b52cec254c93467620494234a6b 100644
--- a/OpenRoadEd/OpenDrive/OpenDriveXmlWriter.cpp
+++ b/OpenRoadEd/OpenDrive/OpenDriveXmlWriter.cpp
@@ -853,6 +853,7 @@ bool OpenDriveXmlWriter::WriteObjects (TiXmlElement *node, Road* road)
     TiXmlElement *object_node = new TiXmlElement("object");
     nodeObjects->LinkEndChild(object_node);
 
+    text.str("");
     text << setprecision(16) << setiosflags (ios_base::scientific) << object->GetS();
     object_node->SetAttribute("s",text.str());
     text.str("");
@@ -920,6 +921,7 @@ bool OpenDriveXmlWriter::WriteSignals (TiXmlElement *node, Road* road)
     TiXmlElement *signal_node = new TiXmlElement("signal");
     nodeSignals->LinkEndChild(signal_node);
 
+    text.str("");
     text << setprecision(16) << setiosflags (ios_base::scientific) << signal->GetS();
     signal_node->SetAttribute("s",text.str());
     text.str("");