From 5175c33a50cbc7c77a85874f5af2487611349f1c Mon Sep 17 00:00:00 2001 From: jsmith-wolve-external Date: Mon, 3 Feb 2025 10:21:15 -0600 Subject: [PATCH] Fix ErrorMessage parsing of XML Symbol Names XML-cached errors containing multiple symbol names are not stored correctly in the internal string data member with newline delimiters. This results in the symbol names becoming concatenated. As a result, suppressing them breaks when those cached files are used instead of full analysis. --- lib/errorlogger.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/errorlogger.cpp b/lib/errorlogger.cpp index 137b47ac3ae..5b0eca580bb 100644 --- a/lib/errorlogger.cpp +++ b/lib/errorlogger.cpp @@ -206,7 +206,9 @@ ErrorMessage::ErrorMessage(const tinyxml2::XMLElement * const errmsg) const int line = strline ? strToInt(strline) : 0; const int column = strcolumn ? strToInt(strcolumn) : 0; callStack.emplace_front(file, info, line, column); - } else if (std::strcmp(name,"symbol")==0) { + } else if (std::strcmp(name,"symbol") == 0) { + if (!mSymbolNames.empty()) + mSymbolNames += '\n'; mSymbolNames += e->GetText(); } }