diff options
Diffstat (limited to 'sigscript/Config.cpp')
-rw-r--r-- | sigscript/Config.cpp | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/sigscript/Config.cpp b/sigscript/Config.cpp index d7f38fd2..6979a49f 100644 --- a/sigscript/Config.cpp +++ b/sigscript/Config.cpp @@ -65,16 +65,8 @@ QVariant Config::value(const QString& name, const bool recursive) const return QVariant(); return m_values[name].first; } - if (recursive) - { - Config* par = m_parent; - while (par) - { - if (par->hasValue(name)) - return par->value(name); - par = par->m_parent; - } - } + if (recursive && m_parent) + return m_parent->value(name, true); return QVariant(); } @@ -83,7 +75,7 @@ bool Config::hasValue(const QString& name, const bool recursive) const QReadLocker locker(&m_lock); if (m_values.contains(name)) return !(m_values[name].second & (Deleted | Hidden)); - if (recursive) + if (recursive && m_parent) return m_parent->hasValue(name, true); return false; } |