aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp
diff options
context:
space:
mode:
authorChristian Kandeler <[email protected]>2022-08-01 14:37:30 +0200
committerChristian Kandeler <[email protected]>2022-08-02 13:50:14 +0000
commit98a39401db763a115ef8606de0aa8e79315aa1ed (patch)
tree4c1fae58487dd984448d557f3c33ca282be4eba1 /src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp
parentb52177119fa20ee53afc5c4a8cc8f6fec6a5ffe1 (diff)
CompilationDatabaseProjectManager: Be more careful with filtering
Do not blindly remove all flags that contain the file's base name. Fixes: QTCREATORBUG-27990 Change-Id: Ib51b65a8694e82ec22af859176b0db0e5d86b5f0 Reviewed-by: Christian Stenger <[email protected]> Reviewed-by: <[email protected]>
Diffstat (limited to 'src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp')
-rw-r--r--src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp b/src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp
index 21605c321c6..c244eebb2b9 100644
--- a/src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp
+++ b/src/plugins/compilationdatabaseprojectmanager/compilationdbparser.cpp
@@ -177,7 +177,7 @@ static QStringList jsonObjectFlags(const QJsonObject &object, QSet<QString> &fla
return flags;
}
-static FilePath jsonObjectFilename(const QJsonObject &object)
+static FilePath jsonObjectFilePath(const QJsonObject &object)
{
const QString workingDir = QDir::cleanPath(object["directory"].toString());
FilePath fileName = FilePath::fromString(QDir::cleanPath(object["file"].toString()));
@@ -204,10 +204,10 @@ std::vector<DbEntry> CompilationDbParser::readJsonObjects() const
}
const QJsonObject object = document.object();
- const Utils::FilePath fileName = jsonObjectFilename(object);
+ const Utils::FilePath filePath = jsonObjectFilePath(object);
const QStringList flags = filterFromFileName(jsonObjectFlags(object, flagsCache),
- fileName.baseName());
- result.push_back({flags, fileName, object["directory"].toString()});
+ filePath.fileName());
+ result.push_back({flags, filePath, object["directory"].toString()});
objectStart = m_projectFileContents.indexOf('{', objectEnd + 1);
objectEnd = m_projectFileContents.indexOf('}', objectStart + 1);