summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/DescriptorHelper.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2005-06-22 17:43:54 +0000
committerBenoit Foucher <benoit@zeroc.com>2005-06-22 17:43:54 +0000
commit0c24068c2b2116e2e8f63cae92ef8093f0fdfe6b (patch)
treec8b82a59b3264b5a62726c1b9ec1144dfb4092e8 /cpp/src/IceGrid/DescriptorHelper.cpp
parentCommitted more fixes for windows compile (diff)
downloadice-0c24068c2b2116e2e8f63cae92ef8093f0fdfe6b.tar.bz2
ice-0c24068c2b2116e2e8f63cae92ef8093f0fdfe6b.tar.xz
ice-0c24068c2b2116e2e8f63cae92ef8093f0fdfe6b.zip
Added session tests, completed update tests.
Diffstat (limited to 'cpp/src/IceGrid/DescriptorHelper.cpp')
-rw-r--r--cpp/src/IceGrid/DescriptorHelper.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/cpp/src/IceGrid/DescriptorHelper.cpp b/cpp/src/IceGrid/DescriptorHelper.cpp
index 37fdf72d663..f5ece493359 100644
--- a/cpp/src/IceGrid/DescriptorHelper.cpp
+++ b/cpp/src/IceGrid/DescriptorHelper.cpp
@@ -661,12 +661,17 @@ ApplicationDescriptorHelper::update(const ApplicationUpdateDescriptor& update)
newApp->name = oldApp->name;
newApp->comment = oldApp->comment;
newApp->targets = oldApp->targets;
- newApp->variables = newUpdate.variables;
- newApp->variables.insert(oldApp->variables.begin(), oldApp->variables.end());
+ newApp->variables = oldApp->variables;
+ for(map<string, string>::const_iterator q = newUpdate.variables.begin(); q != newUpdate.variables.end(); ++q)
+ {
+ newApp->variables[q->first] = q->second;
+ _variables->addVariable(q->first, q->second);
+ }
Ice::StringSeq::const_iterator p;
for(p = newUpdate.removeVariables.begin(); p != newUpdate.removeVariables.end(); ++p)
{
newApp->variables.erase(*p);
+ _variables->remove(*p);
}
newApp->serverTemplates = newUpdate.serverTemplates;