From 3a08c284e3128ef8ee5f5a3b4387bb9ee32ba97b Mon Sep 17 00:00:00 2001 From: sb Date: Tue, 6 Apr 2010 17:40:33 +0200 Subject: sb122: silently ignore unknown files in Components::parseFileList (the extension manager's file lists can accrue garbage when extension deployment fails mid-way through) --- configmgr/source/components.cxx | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'configmgr') diff --git a/configmgr/source/components.cxx b/configmgr/source/components.cxx index 51a1a6547d9b..58e8c68d636a 100644 --- a/configmgr/source/components.cxx +++ b/configmgr/source/components.cxx @@ -473,12 +473,10 @@ void Components::parseFileList( try { (*parseFile)(url, layer, &data_, 0); } catch (css::container::NoSuchElementException & e) { - throw css::uno::RuntimeException( - (rtl::OUString( - RTL_CONSTASCII_USTRINGPARAM( - "stat'ed file does not exist: ")) + - e.Message), - css::uno::Reference< css::uno::XInterface >()); + OSL_TRACE( + "configmgr file does not exist: %s", + rtl::OUStringToOString( + e.Message, RTL_TEXTENCODING_UTF8).getStr()); } } if (i == -1) { -- cgit From 3e41502e56c37991dd6e645fd1ff8fb7a325ff1b Mon Sep 17 00:00:00 2001 From: sb Date: Mon, 12 Apr 2010 15:12:26 +0200 Subject: sb122: #i110083# improve xcsparser.cxx merge function --- configmgr/source/xcsparser.cxx | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'configmgr') diff --git a/configmgr/source/xcsparser.cxx b/configmgr/source/xcsparser.cxx index 12e64ebbe171..8bda874cc5b3 100644 --- a/configmgr/source/xcsparser.cxx +++ b/configmgr/source/xcsparser.cxx @@ -78,19 +78,19 @@ void merge( case Node::KIND_LOCALIZED_VALUE: break; //TODO: merge certain parts? case Node::KIND_GROUP: - if (dynamic_cast< GroupNode * >(original.get())->isExtensible()) { - for (NodeMap::iterator i2(update->getMembers().begin()); - i2 != update->getMembers().end(); ++i2) - { - NodeMap::iterator i1( - original->getMembers().find(i2->first)); - if (i1 == original->getMembers().end()) { - if (i2->second->kind() == Node::KIND_PROPERTY) { - original->getMembers().insert(*i2); - } - } else if (i2->second->kind() == i1->second->kind()) { - merge(i1->second, i2->second); + for (NodeMap::iterator i2(update->getMembers().begin()); + i2 != update->getMembers().end(); ++i2) + { + NodeMap::iterator i1(original->getMembers().find(i2->first)); + if (i1 == original->getMembers().end()) { + if (i2->second->kind() == Node::KIND_PROPERTY && + dynamic_cast< GroupNode * >( + original.get())->isExtensible()) + { + original->getMembers().insert(*i2); } + } else if (i2->second->kind() == i1->second->kind()) { + merge(i1->second, i2->second); } } break; -- cgit