diff --git a/qmake/project.cpp b/qmake/project.cpp index 208d5b7d3e..7a5c953f02 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -614,10 +614,8 @@ QMakeProject::~QMakeProject() void -QMakeProject::init(QMakeProperty *p, const QHash *vars) +QMakeProject::init(QMakeProperty *p) { - if(vars) - base_vars = *vars; if(!p) { prop = new QMakeProperty; own_prop = true; @@ -631,7 +629,8 @@ QMakeProject::init(QMakeProperty *p, const QHash *vars) QMakeProject::QMakeProject(QMakeProject *p, const QHash *vars) { - init(p->properties(), vars ? vars : &p->variables()); + init(p->properties()); + base_vars = vars ? *vars : p->variables(); for(QHash::iterator it = p->replaceFunctions.begin(); it != p->replaceFunctions.end(); ++it) { it.value()->ref(); replaceFunctions.insert(it.key(), it.value()); diff --git a/qmake/project.h b/qmake/project.h index 4c99825317..6422ed1f32 100644 --- a/qmake/project.h +++ b/qmake/project.h @@ -106,17 +106,14 @@ class QMakeProject bool doProjectCheckReqs(const QStringList &deps, QHash &place); bool doVariableReplace(QString &str, QHash &place); QStringList doVariableReplaceExpand(const QString &str, QHash &place, bool *ok=0); - void init(QMakeProperty *, const QHash *); + void init(QMakeProperty *); QStringList &values(const QString &v, QHash &place); void validateModes(); void resolveSpec(QString *spec, const QString &qmakespec); public: - QMakeProject() { init(0, 0); } - QMakeProject(QMakeProperty *p) { init(p, 0); } + QMakeProject(QMakeProperty *p = 0) { init(p); } QMakeProject(QMakeProject *p, const QHash *nvars=0); - QMakeProject(const QHash &nvars) { init(0, &nvars); } - QMakeProject(QMakeProperty *p, const QHash &nvars) { init(p, &nvars); } ~QMakeProject(); void setExtraVars(const QHash &_vars) { extra_vars = _vars; }