summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/PropertiesI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Ice/PropertiesI.cpp')
-rw-r--r--cpp/src/Ice/PropertiesI.cpp19
1 files changed, 17 insertions, 2 deletions
diff --git a/cpp/src/Ice/PropertiesI.cpp b/cpp/src/Ice/PropertiesI.cpp
index fb2ca88bdb5..9bde5157184 100644
--- a/cpp/src/Ice/PropertiesI.cpp
+++ b/cpp/src/Ice/PropertiesI.cpp
@@ -171,9 +171,11 @@ Ice::PropertiesI::setProperty(const string& key, const string& value)
// dot is an error.
//
assert(dotPos != string::npos);
-
+
+ bool mismatchCase = false;
+ string otherKey;
string propPrefix = pattern.substr(0, dotPos);
- if(propPrefix != prefix)
+ if(IceUtilInternal::toUpper(propPrefix) != IceUtilInternal::toUpper(prefix))
{
continue;
}
@@ -193,11 +195,24 @@ Ice::PropertiesI::setProperty(const string& key, const string& value)
currentKey = prop.deprecatedBy;
}
}
+
+ if(!found && IceUtilInternal::match(IceUtilInternal::toUpper(currentKey),
+ IceUtilInternal::toUpper(prop.pattern)))
+ {
+ found = true;
+ mismatchCase = true;
+ otherKey = prop.pattern;
+ break;
+ }
}
if(!found)
{
logger->warning("unknown property: `" + currentKey + "'");
}
+ else if(mismatchCase)
+ {
+ logger->warning("unknown property: `" + currentKey + "'; did you mean `" + otherKey + "'");
+ }
}
}