[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/work/kdelibs4_kconfig/kdecore/kconfig
From: Thomas Braxton <brax108 () cox ! net>
Date: 2006-07-01 3:22:14
Message-ID: 1151724134.353065.2713.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 556657 by braxton:
allow [] in key names, this is a forward port of SVN commit 556653
M +22 -2 kconfigini.cpp
M +3 -0 kconfigini_p.h
--- branches/work/kdelibs4_kconfig/kdecore/kconfig/kconfigini.cpp #556656:556657
@@ -223,7 +223,7 @@
}
}
#endif
- KEntryKey key(currentGroup, aKey);
+ KEntryKey key(currentGroup, decodeKey(aKey));
key.bLocal = !locale.isNull();
key.bDefault = bDefault;
@@ -292,7 +292,7 @@
firstEntry = false;
// it is data for a group
- stream << key.mKey;
+ stream << encodeKey(key.mKey);
#if 0
if (currentEntry.bNLS)
@@ -485,6 +485,26 @@
return result;
}
+QByteArray KConfigIniBackend::decodeKey(const QByteArray& aString)
+{
+ QByteArray result(aString);
+
+ result.replace("%5b", "[");
+ result.replace("%5d", "]");
+
+ return result;
+}
+
+QByteArray KConfigIniBackend::encodeKey(const QByteArray& aString)
+{
+ QByteArray result(aString);
+
+ result.replace('[', "%5b");
+ result.replace(']', "%5d");
+
+ return result;
+}
+
QByteArray KConfigIniBackend::encodeString(const QByteArray& aString)
{
QByteArray result(aString.length()*2, 0); // Maximum 2x as long as source string
--- branches/work/kdelibs4_kconfig/kdecore/kconfig/kconfigini_p.h #556656:556657
@@ -50,6 +50,9 @@
static QByteArray decodeGroup(const QByteArray& aString);
static QByteArray encodeGroup(const QByteArray& aString);
+ static QByteArray decodeKey(const QByteArray& aString);
+ static QByteArray encodeKey(const QByteArray& aString);
+
static QByteArray encodeString(const QByteArray& aString);
static QByteArray decodeString(const QByteArray& aString);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic