From b3dc879e8b108c26c929bfbe551bcdf77f140e94 Mon Sep 17 00:00:00 2001 From: Lieven Hey Date: Thu, 20 May 2021 12:29:04 +0200 Subject: fix deleted group is in listGroups calling deleteGroup only deletes all entries but the group does still exists in listGroups this is somewhat irritating since calling exists on that group will return false with this patch the group does no longer exists in listGroup --- src/core/kconfig.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/core/kconfig.cpp') 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 != "" && group != "$Version") { + if (key.mKey.isNull() && !group.isEmpty() && group != "" && 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'))); } -- cgit v1.2.1