From 77c52c65a7d8e983dd264853b7e12abf09c6bc11 Mon Sep 17 00:00:00 2001 From: Kathrin Frank Date: Tue, 12 Nov 2024 16:22:24 +0100 Subject: [PATCH] bugfix #204 --- .../xml/OpenScenarioXmlExporterV1_3.cpp | 46 +++++++++++++++++-- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/cpp/openScenarioLib/generated/v1_3/export/xml/OpenScenarioXmlExporterV1_3.cpp b/cpp/openScenarioLib/generated/v1_3/export/xml/OpenScenarioXmlExporterV1_3.cpp index 1daf9fac..b51e7a2e 100644 --- a/cpp/openScenarioLib/generated/v1_3/export/xml/OpenScenarioXmlExporterV1_3.cpp +++ b/cpp/openScenarioLib/generated/v1_3/export/xml/OpenScenarioXmlExporterV1_3.cpp @@ -1598,9 +1598,16 @@ namespace NET_ASAM_OPENSCENARIO { // Add Attributes (Parameters) const auto kContent = customCommandActionWriter->GetContent(); + + //Modification: when parsing files with half tabs the format get mixed up + auto modifiedContent = kContent.substr(1, kContent.size()); + modifiedContent = "\n\t\t" + modifiedContent; + modifiedContent.append("\t\t"); + if (!kContent.empty()) { - elementNode->InsertEndChild(document->NewText(kContent.c_str())); + //elementNode->InsertEndChild(document->NewText(kContent.c_str())); + elementNode->InsertEndChild(document->NewText(modifiedContent.c_str())); } const auto kType = customCommandActionWriter->GetType(); if (customCommandActionWriter->IsTypeParameterized()) @@ -1617,9 +1624,16 @@ namespace NET_ASAM_OPENSCENARIO { // Add Attributes (Parameters) const auto kContent = customContentWriter->GetContent(); + + //Modification: when parsing files with half tabs the format get mixed up + auto modifiedContent = kContent.substr(1, kContent.size()); + modifiedContent = "\n\t\t" + modifiedContent; + modifiedContent.append("\t\t"); + if (!kContent.empty()) { - elementNode->InsertEndChild(document->NewText(kContent.c_str())); + //elementNode->InsertEndChild(document->NewText(kContent.c_str())); + elementNode->InsertEndChild(document->NewText(modifiedContent.c_str())); } // Add Children (Normal, Wrapped, Unwrapped, simpleContent); } @@ -3177,9 +3191,26 @@ namespace NET_ASAM_OPENSCENARIO { // Add Attributes (Parameters) const auto kText = licenseWriter->GetText(); + + //Modification: when parsing files with half tabs the format get mixed up + std::string modifiedText; + + if (kText.substr(0, 3) == "\n\t\t" || kText.substr(0, 3) == "\n\t ") + { + modifiedText = kText.substr(3, kText.size()); + modifiedText = "\n\t\t\t" + modifiedText; + } + else + { + modifiedText = kText.substr(1, kText.size()); + modifiedText = "\n\t" + modifiedText; + } + modifiedText.append("\t"); + if (!kText.empty()) { - elementNode->InsertEndChild(document->NewText(kText.c_str())); + //elementNode->InsertEndChild(document->NewText(kText.c_str())); + elementNode->InsertEndChild(document->NewText(modifiedText.c_str())); } const auto kName = licenseWriter->GetName(); if (licenseWriter->IsNameParameterized()) @@ -7780,9 +7811,16 @@ namespace NET_ASAM_OPENSCENARIO { // Add Attributes (Parameters) const auto kContent = userDefinedDistributionWriter->GetContent(); + + //Modification: when parsing files with half tabs the format get mixed up + auto modifiedContent = kContent.substr(1, kContent.size()); + modifiedContent = "\n\t\t" + modifiedContent; + modifiedContent.append("\t\t"); + if (!kContent.empty()) { - elementNode->InsertEndChild(document->NewText(kContent.c_str())); + //elementNode->InsertEndChild(document->NewText(kContent.c_str())); + elementNode->InsertEndChild(document->NewText(modifiedContent.c_str())); } const auto kType = userDefinedDistributionWriter->GetType(); if (userDefinedDistributionWriter->IsTypeParameterized())