summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/DescriptorParser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/DescriptorParser.cpp')
-rw-r--r--cpp/src/IceGrid/DescriptorParser.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/cpp/src/IceGrid/DescriptorParser.cpp b/cpp/src/IceGrid/DescriptorParser.cpp
index 2183ed3ee2f..1cacdac14fe 100644
--- a/cpp/src/IceGrid/DescriptorParser.cpp
+++ b/cpp/src/IceGrid/DescriptorParser.cpp
@@ -460,8 +460,14 @@ DescriptorHandler::endElement(const string& name, int line, int column)
{
if(_inAdapter)
{
- assert(_currentCommunicator);
- _currentCommunicator->setAdapterDescription(elementValue());
+ if(_currentCommunicator)
+ {
+ _currentCommunicator->setAdapterDescription(elementValue());
+ }
+ else
+ {
+ _currentApplication->setReplicaGroupDescription(elementValue());
+ }
}
else if(_inDbEnv)
{
@@ -472,6 +478,10 @@ DescriptorHandler::endElement(const string& name, int line, int column)
{
_currentCommunicator->setDescription(elementValue());
}
+ else if(_currentNode.get())
+ {
+ _currentNode->setDescription(elementValue());
+ }
else if(_currentApplication.get())
{
_currentApplication->setDescription(elementValue());