forked from qt-creator/qt-creator
Fixes: - Console application doesn't start on Mac
Task: - 244263 RevBy: - dt
This commit is contained in:
@@ -768,11 +768,15 @@ bool ProFileEvaluator::Private::visitProValue(ProValue *value)
|
|||||||
case ProVariable::RemoveOperator: // -=
|
case ProVariable::RemoveOperator: // -=
|
||||||
if (!m_cumulative) {
|
if (!m_cumulative) {
|
||||||
if (!m_skipLevel) {
|
if (!m_skipLevel) {
|
||||||
removeEach(&m_valuemap, varName, v);
|
// the insertUnique is a hack for the moment to fix the
|
||||||
removeEach(&m_filevaluemap[currentProFile()], varName, v);
|
// CONFIG -= app_bundle problem on Mac (add it to a variable -CONFIG as was done before)
|
||||||
|
if (removeEach(&m_valuemap, varName, v) == 0)
|
||||||
|
insertUnique(&m_valuemap, QString("-%1").arg(varName), v);
|
||||||
|
if (removeEach(&m_filevaluemap[currentProFile()], varName, v) == 0)
|
||||||
|
insertUnique(&m_filevaluemap[currentProFile()], QString("-%1").arg(varName), v);
|
||||||
}
|
}
|
||||||
} else if (!m_skipLevel) {
|
} else if (!m_skipLevel) {
|
||||||
// this is a hack for the moment to fix the
|
// the insertUnique is a hack for the moment to fix the
|
||||||
// CONFIG -= app_bundle problem on Mac (add it to a variable -CONFIG as was done before)
|
// CONFIG -= app_bundle problem on Mac (add it to a variable -CONFIG as was done before)
|
||||||
insertUnique(&m_valuemap, QString("-%1").arg(varName), v);
|
insertUnique(&m_valuemap, QString("-%1").arg(varName), v);
|
||||||
insertUnique(&m_filevaluemap[currentProFile()], QString("-%1").arg(varName), v);
|
insertUnique(&m_filevaluemap[currentProFile()], QString("-%1").arg(varName), v);
|
||||||
|
@@ -140,12 +140,14 @@ static void insertUnique(QHash<QString, QStringList> *map,
|
|||||||
sl.append(str);
|
sl.append(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void removeEach(QHash<QString, QStringList> *map,
|
static int removeEach(QHash<QString, QStringList> *map,
|
||||||
const QString &key, const QStringList &value)
|
const QString &key, const QStringList &value)
|
||||||
{
|
{
|
||||||
|
int count = 0;
|
||||||
QStringList &sl = (*map)[key];
|
QStringList &sl = (*map)[key];
|
||||||
foreach (const QString &str, value)
|
foreach (const QString &str, value)
|
||||||
sl.removeAll(str);
|
count += sl.removeAll(str);
|
||||||
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user