From 0a871fafc301a8234c12e08383a545bb3f6125d8 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Tue, 19 Jan 2021 09:12:33 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/doxygen.git#16e4f9c8407591ae3f5bef8ab12554e4ef8527e3 --- ...1.9.1-crash-when-parsing-config-file.patch | 64 +++++++++++++++++++ doxygen.spec | 6 +- 2 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 doxgen-1.9.1-crash-when-parsing-config-file.patch diff --git a/doxgen-1.9.1-crash-when-parsing-config-file.patch b/doxgen-1.9.1-crash-when-parsing-config-file.patch new file mode 100644 index 0000000..848750d --- /dev/null +++ b/doxgen-1.9.1-crash-when-parsing-config-file.patch @@ -0,0 +1,64 @@ +commit 3b15963316b59cd1af3468a43535d90343916ffb +Author: Dimitri van Heesch +Date: Mon Jan 18 19:59:16 2021 +0100 + + issue #8343: doxygen-1.9.1 crashes when parsing config file + +diff --git a/src/configimpl.l b/src/configimpl.l +index 7f73ec01..56a2e108 100644 +--- a/src/configimpl.l ++++ b/src/configimpl.l +@@ -1210,7 +1210,7 @@ static void substEnvVarsInStrList(StringVector &sl) + c=result.at(i); + if (c=='"') // end quote + { +- results.push_back(result.mid(p,i-p).data()); ++ results.push_back(result.mid(p,i-p).str()); + p=i+1; + break; + } +@@ -1222,7 +1222,7 @@ static void substEnvVarsInStrList(StringVector &sl) + } + else if (c==' ' || c=='\t') // separator + { +- if (i>p) results.push_back(result.mid(p,i-p).data()); ++ if (i>p) results.push_back(result.mid(p,i-p).str()); + p=i+1; + } + } +@@ -1234,7 +1234,7 @@ static void substEnvVarsInStrList(StringVector &sl) + } + else // just goto the next element in the list + { +- if (!result.isEmpty()) results.push_back(result.data()); ++ if (!result.isEmpty()) results.push_back(result.str()); + } + } + sl = results; +@@ -1409,7 +1409,7 @@ static void cleanUpPaths(StringVector &str) + QFileInfo fi(path.c_str()); + if (fi.exists() && fi.isDir()) + { +- path = fi.absFilePath().utf8().data(); ++ path = fi.absFilePath().utf8().str(); + if (path[path.size()-1]!='/') path+='/'; + } + } +@@ -1545,7 +1545,7 @@ void Config::checkAndCorrect() + QString p = QDir::currentDirPath(); + if (p.at(p.length()-1)!='/') + p.append('/'); +- stripFromPath.push_back(p.utf8().data()); ++ stripFromPath.push_back(p.utf8().str()); + } + else + { +@@ -1882,7 +1882,7 @@ void Config::checkAndCorrect() + if (inputSources.empty()) + { + // use current dir as the default +- inputSources.push_back(QDir::currentDirPath().utf8().data()); ++ inputSources.push_back(QDir::currentDirPath().utf8().str()); + } + else + { diff --git a/doxygen.spec b/doxygen.spec index 28a2c72..3d86764 100644 --- a/doxygen.spec +++ b/doxygen.spec @@ -16,7 +16,7 @@ Summary: A documentation system for C/C++ Name: doxygen Epoch: 1 Version: 1.9.1 -Release: 1%{?dist} +Release: 2%{?dist} # No version is specified. License: GPL+ @@ -27,6 +27,7 @@ Source1: doxywizard.desktop # these icons are part of doxygen and converted from doxywizard.ico Source2: doxywizard-icons.tar.xz # upstream patches +Patch1: doxgen-1.9.1-crash-when-parsing-config-file.patch BuildRequires: %{_bindir}/python3 BuildRequires: gcc-c++ gcc @@ -300,6 +301,9 @@ desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE1} %endif %changelog +* Tue Jan 19 2021 Than Ngo - 1.9.1-2 +- fixed bz#1916161, crashes when parsing config file + * Mon Jan 11 2021 Than Ngo - 1.9.1-1 - update to 1.9.1