[Scummvm-cvs-logs] CVS: scummvm/common config-manager.h,1.14,1.15 config-manager.cpp,1.20,1.21
Max Horn
fingolfin at users.sourceforge.net
Mon Mar 29 11:27:06 CEST 2004
Update of /cvsroot/scummvm/scummvm/common
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26741
Modified Files:
config-manager.h config-manager.cpp
Log Message:
Fixed a bad crash that occured when adding a new game target in the launcher
Index: config-manager.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/common/config-manager.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- config-manager.h 28 Mar 2004 20:26:13 -0000 1.14
+++ config-manager.h 29 Mar 2004 19:15:22 -0000 1.15
@@ -54,26 +54,16 @@
private:
StringMap _keyValueComments;
String _domainComment;
- public:
- const String &get(const String &key) const {
- Node *node = findNode(_root, key);
- return node ? node->_value : String::emptyString;
- }
+ public:
+ const String &get(const String &key) const;
- void setDomainComment(const String &comment) {
- _domainComment = comment;
- }
- const String &getDomainComment() const {
- return _domainComment;
- }
+ void setDomainComment(const String &comment);
+ const String &getDomainComment() const;
- void setKVComment(const String &key, const String &comment) {
- _keyValueComments[key] = comment;
- }
- const String &getKVComment(const String &key) const {
- return _keyValueComments[key];
- }
+ void setKVComment(const String &key, const String &comment);
+ const String &getKVComment(const String &key) const;
+ bool hasKVComment(const String &key) const;
};
typedef Map<String, Domain, IgnoreCaseComparator> DomainMap;
Index: config-manager.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/common/config-manager.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- config-manager.cpp 28 Mar 2004 20:26:14 -0000 1.20
+++ config-manager.cpp 29 Mar 2004 19:15:23 -0000 1.21
@@ -240,9 +240,10 @@
const String &value = x->_value;
if (!value.isEmpty()) {
// Write comment (if any)
- comment = domain.getKVComment(x->_key);
- if (!comment.isEmpty())
+ if (domain.hasKVComment(x->_key)) {
+ comment = domain.getKVComment(x->_key);
fprintf(file, "%s", comment.c_str());
+ }
// Write the key/value pair
fprintf(file, "%s=%s\n", x->_key.c_str(), value.c_str());
}
@@ -451,4 +452,30 @@
return _gameDomains.contains(domain);
}
+
+#pragma mark -
+
+
+const String &ConfigManager::Domain::get(const String &key) const {
+ Node *node = findNode(_root, key);
+ return node ? node->_value : String::emptyString;
+}
+
+void ConfigManager::Domain::setDomainComment(const String &comment) {
+ _domainComment = comment;
+}
+const String &ConfigManager::Domain::getDomainComment() const {
+ return _domainComment;
+}
+
+void ConfigManager::Domain::setKVComment(const String &key, const String &comment) {
+ _keyValueComments[key] = comment;
+}
+const String &ConfigManager::Domain::getKVComment(const String &key) const {
+ return _keyValueComments[key];
+}
+bool ConfigManager::Domain::hasKVComment(const String &key) const {
+ return _keyValueComments.contains(key);
+}
+
} // End of namespace Common
More information about the Scummvm-git-logs
mailing list