diff options
author | Christian Stenger <[email protected]> | 2020-07-14 11:20:22 +0200 |
---|---|---|
committer | Christian Stenger <[email protected]> | 2020-07-15 08:21:23 +0000 |
commit | 9783761df383520609569f0ba2b6f197cf767867 (patch) | |
tree | 6b826a8edfef7d712211078c994d71c1d56af8bf /src/plugins/qmakeprojectmanager/makefileparse.cpp | |
parent | 9fa1286faff8351b0d4e48e45589e2daa7ccc455 (diff) |
QbsPM:QmakePM: Replace QRegExp by QRegularExpression
Task-number: QTCREATORBUG-24098
Change-Id: If561553a6030f8eaedbafbc1b4531a6b63c4aa36
Reviewed-by: Christian Kandeler <[email protected]>
Diffstat (limited to 'src/plugins/qmakeprojectmanager/makefileparse.cpp')
-rw-r--r-- | src/plugins/qmakeprojectmanager/makefileparse.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/plugins/qmakeprojectmanager/makefileparse.cpp b/src/plugins/qmakeprojectmanager/makefileparse.cpp index dff3a1b2613..206270f481f 100644 --- a/src/plugins/qmakeprojectmanager/makefileparse.cpp +++ b/src/plugins/qmakeprojectmanager/makefileparse.cpp @@ -32,7 +32,7 @@ #include <QDebug> #include <QDir> #include <QFileInfo> -#include <QRegExp> +#include <QRegularExpression> #include <QTextStream> #include <QLoggingCategory> @@ -72,7 +72,7 @@ void MakeFileParse::parseArgs(const QString &args, const QString &project, QList<QMakeAssignment> *assignments, QList<QMakeAssignment> *afterAssignments) { - QRegExp regExp(QLatin1String("([^\\s\\+-]*)\\s*(\\+=|=|-=|~=)(.*)")); + const QRegularExpression regExp(QLatin1String("^([^\\s\\+-]*)\\s*(\\+=|=|-=|~=)(.*)$")); bool after = false; bool ignoreNext = false; m_unparsedArguments = args; @@ -88,11 +88,12 @@ void MakeFileParse::parseArgs(const QString &args, const QString &project, after = true; ait.deleteArg(); } else if (ait.value().contains(QLatin1Char('='))) { - if (regExp.exactMatch(ait.value())) { + const QRegularExpressionMatch match = regExp.match(ait.value()); + if (match.hasMatch()) { QMakeAssignment qa; - qa.variable = regExp.cap(1); - qa.op = regExp.cap(2); - qa.value = regExp.cap(3).trimmed(); + qa.variable = match.captured(1); + qa.op = match.captured(2); + qa.value = match.captured(3).trimmed(); if (after) afterAssignments->append(qa); else @@ -248,11 +249,12 @@ static FilePath findQMakeBinaryFromMakefile(const QString &makefile) QFile fi(makefile); if (fi.exists() && fi.open(QFile::ReadOnly)) { QTextStream ts(&fi); - QRegExp r1(QLatin1String("QMAKE\\s*=(.*)")); + const QRegularExpression r1(QLatin1String("^QMAKE\\s*=(.*)$")); while (!ts.atEnd()) { QString line = ts.readLine(); - if (r1.exactMatch(line)) { - QFileInfo qmake(r1.cap(1).trimmed()); + const QRegularExpressionMatch match = r1.match(line); + if (match.hasMatch()) { + QFileInfo qmake(match.captured(1).trimmed()); QString qmakePath = qmake.filePath(); if (!QString::fromLatin1(QTC_HOST_EXE_SUFFIX).isEmpty() && !qmakePath.endsWith(QLatin1String(QTC_HOST_EXE_SUFFIX))) { |