Blame doxgen-1.9.1-crash-when-parsing-config-file-part2.patch

Than Ngo 195466
diff -up doxygen/src/configimpl.l.orig doxygen/src/configimpl.l
Than Ngo 195466
--- doxygen/src/configimpl.l.orig	2021-01-19 17:25:00.933789247 +0100
Than Ngo 195466
+++ doxygen/src/configimpl.l	2021-01-19 17:26:09.704744240 +0100
Than Ngo 195466
@@ -1175,8 +1175,7 @@ static void substEnvVarsInStrList(String
Than Ngo 195466
   for (const auto &s : sl)
Than Ngo 195466
   {
Than Ngo 195466
     QCString result = s.c_str();
Than Ngo 195466
-    // an argument with quotes will have an extra space at the end, so wasQuoted will be TRUE.
Than Ngo 195466
-    bool wasQuoted = (result.find(' ')!=-1) || (result.find('\t')!=-1);
Than Ngo 195466
+    bool wasQuoted = (result.find(' ')!=-1) || (result.find('\t')!=-1) || (result.find('"')!=-1);
Than Ngo 195466
     // here we strip the quote again
Than Ngo 195466
     substEnvVarsInString(result);
Than Ngo 195466
 
Than Ngo 195466
@@ -1229,7 +1228,7 @@ static void substEnvVarsInStrList(String
Than Ngo 195466
       }
Than Ngo 195466
       if (p!=l) // add the leftover as a string
Than Ngo 195466
       {
Than Ngo 195466
-        results.push_back(result.right(l-p).data());
Than Ngo 195466
+        results.push_back(result.right(l-p).str());
Than Ngo 195466
       }
Than Ngo 195466
     }
Than Ngo 195466
     else // just goto the next element in the list