summaryrefslogtreecommitdiffabout
path: root/microkde/kconfig.cpp
authorzautrix <zautrix>2004-07-05 13:18:57 (UTC)
committer zautrix <zautrix>2004-07-05 13:18:57 (UTC)
commitca6ce5868aef5e925ff2e61d363f71e43d2b7d7b (patch) (side-by-side diff)
tree5cb350d3a9bd3451fcf5184a2dd8d36ddd330f0e /microkde/kconfig.cpp
parent93f9b1e0a8935210b03a094ce18949b7197041aa (diff)
downloadkdepimpi-ca6ce5868aef5e925ff2e61d363f71e43d2b7d7b.zip
kdepimpi-ca6ce5868aef5e925ff2e61d363f71e43d2b7d7b.tar.gz
kdepimpi-ca6ce5868aef5e925ff2e61d363f71e43d2b7d7b.tar.bz2
Fix of endless loop when removin resources
Diffstat (limited to 'microkde/kconfig.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kconfig.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/microkde/kconfig.cpp b/microkde/kconfig.cpp
index f8e362e..71db891 100644
--- a/microkde/kconfig.cpp
+++ b/microkde/kconfig.cpp
@@ -344,13 +344,14 @@ bool KConfig::deleteGroup( const QString& group)
pos = itBool.key().find( group );
if (pos == 0) {
delBool = itBool;
++itBool;
mBoolMap.remove(delBool);
dirty = true;
- }
+ } else
+ ++itBool;
}
/*
for( itBool = mBoolMap.begin(); itBool != mBoolMap.end(); ++itBool )
{
pos = itBool.key().find( group );
@@ -367,13 +368,14 @@ bool KConfig::deleteGroup( const QString& group)
if (pos == 0) {
delString = itString;
++itString;
mStringMap.remove(delString);
//qDebug("delte++++++++++++++++++ ");
dirty = true;
- }
+ } else
+ ++itString;
}
/* this leads to a memory access violation
for( itString = mStringMap.begin(); itString != mStringMap.end(); ++itString )
{
pos = itString.key().find( group );
@@ -389,13 +391,14 @@ bool KConfig::deleteGroup( const QString& group)
pos = itDateTime.key().find( group );
if (pos == 0) {
delDateTime = itDateTime;
++itDateTime;
mDateTimeMap.remove(delDateTime);
dirty = true;
- }
+ } else
+ ++itDateTime;
}
/*
for( itDateTime = mDateTimeMap.begin(); itDateTime != mDateTimeMap.end(); ++itDateTime )
{
pos = itDateTime.key().find( group );