summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/DescriptorBuilder.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-09-19 10:19:04 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-09-19 10:19:04 +0000
commitb2baf486cde6c1765e0e24fdf46b8fcaa8da18f5 (patch)
tree4669d447fafcacab589fa60f01adefa4aef2a85e /cpp/src/IceGrid/DescriptorBuilder.cpp
parentAdded test for IceGrid/Query object (diff)
downloadice-b2baf486cde6c1765e0e24fdf46b8fcaa8da18f5.tar.bz2
ice-b2baf486cde6c1765e0e24fdf46b8fcaa8da18f5.tar.xz
ice-b2baf486cde6c1765e0e24fdf46b8fcaa8da18f5.zip
Fixes to prevent definition of duplicate parameters in templates
Diffstat (limited to 'cpp/src/IceGrid/DescriptorBuilder.cpp')
-rw-r--r--cpp/src/IceGrid/DescriptorBuilder.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/cpp/src/IceGrid/DescriptorBuilder.cpp b/cpp/src/IceGrid/DescriptorBuilder.cpp
index 44be7f678ef..c10abbe9acb 100644
--- a/cpp/src/IceGrid/DescriptorBuilder.cpp
+++ b/cpp/src/IceGrid/DescriptorBuilder.cpp
@@ -495,6 +495,12 @@ TemplateDescriptorBuilder::TemplateDescriptorBuilder(ApplicationDescriptorBuilde
void
TemplateDescriptorBuilder::addParameter(const XmlAttributesHelper& attrs)
{
+ if(find(_descriptor.parameters.begin(), _descriptor.parameters.end(), attrs("name")) !=
+ _descriptor.parameters.end())
+ {
+ throw "duplicate parameter `" + attrs("name") + "'";
+ }
+
_descriptor.parameters.push_back(attrs("name"));
if(attrs.contains("default"))
{