diff options
| -rw-r--r-- | autotests/kconfigtest.cpp | 2 | ||||
| -rw-r--r-- | src/core/kconfig.cpp | 4 | 
2 files changed, 3 insertions, 3 deletions
| diff --git a/autotests/kconfigtest.cpp b/autotests/kconfigtest.cpp index bf7882f0..e6a3e645 100644 --- a/autotests/kconfigtest.cpp +++ b/autotests/kconfigtest.cpp @@ -802,7 +802,7 @@ void KConfigTest::testDelete()      delgr.deleteGroup();      QVERIFY(!delgr.exists());      QVERIFY(!ct.hasGroup("Nested Group 3")); -    QVERIFY(ct.groupList().contains(QStringLiteral("Nested Group 3"))); +    QVERIFY(!ct.groupList().contains(QStringLiteral("Nested Group 3")));      KConfigGroup ng(&ct, "Nested Group 2");      QVERIFY(sc.hasGroup("Complex Types")); diff --git a/src/core/kconfig.cpp b/src/core/kconfig.cpp index cc3700e1..49a66d14 100644 --- a/src/core/kconfig.cpp +++ b/src/core/kconfig.cpp @@ -269,7 +269,7 @@ QStringList KConfig::groupList() const      for (auto entryMapIt = d->entryMap.cbegin(); entryMapIt != d->entryMap.cend(); ++entryMapIt) {          const KEntryKey &key = entryMapIt.key();          const QByteArray group = key.mGroup; -        if (key.mKey.isNull() && !group.isEmpty() && group != "<default>" && group != "$Version") { +        if (key.mKey.isNull() && !group.isEmpty() && group != "<default>" && group != "$Version" && !d->hasNonDeletedEntries(group)) {              const QString groupname = QString::fromUtf8(group);              groups << groupname.left(groupname.indexOf(QLatin1Char('\x1d')));          } @@ -285,7 +285,7 @@ QStringList KConfigPrivate::groupList(const QByteArray &group) const      for (auto entryMapIt = entryMap.cbegin(); entryMapIt != entryMap.cend(); ++entryMapIt) {          const KEntryKey &key = entryMapIt.key(); -        if (key.mKey.isNull() && key.mGroup.startsWith(theGroup)) { +        if (key.mKey.isNull() && key.mGroup.startsWith(theGroup) && !hasNonDeletedEntries(group)) {              const QString groupname = QString::fromUtf8(key.mGroup.mid(theGroup.length()));              groups << groupname.left(groupname.indexOf(QLatin1Char('\x1d')));          } | 
