diff options
Diffstat (limited to 'configmgr/source/components.cxx')
-rw-r--r-- | configmgr/source/components.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/configmgr/source/components.cxx b/configmgr/source/components.cxx index 48d555e3236e..56c597593395 100644 --- a/configmgr/source/components.cxx +++ b/configmgr/source/components.cxx @@ -137,7 +137,7 @@ bool canRemoveFromLayer(int layer, rtl::Reference< Node > const & node) { switch (node->kind()) { case Node::KIND_LOCALIZED_PROPERTY: case Node::KIND_GROUP: - for (NodeMap::iterator i(node->getMembers().begin()); + for (NodeMap::const_iterator i(node->getMembers().begin()); i != node->getMembers().end(); ++i) { if (!canRemoveFromLayer(layer, i->second)) { @@ -402,7 +402,9 @@ void Components::removeExtensionXcuFile( node->kind() == Node::KIND_GROUP || node->kind() == Node::KIND_SET); if (canRemoveFromLayer(item->layer, node)) { - parent->getMembers().erase(i->back()); + NodeMap * members = parent->getMemberMap(); + assert(members != 0); + members->erase(i->back()); data_.modifications.remove(*i); modifications->add(*i); } |