summaryrefslogtreecommitdiff
path: root/configmgr
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-01-12 09:15:19 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-01-12 09:19:07 +0100
commitab93e1b483d7af9bcac997e838e5a62a924e28c3 (patch)
treeb511d9eca012430d33db044bfebc22a7e05d88a2 /configmgr
parent66458f367ac045c5e263271b58ed4b0068644ac9 (diff)
Check for xcu <node> that should rather be <prop>.
Diffstat (limited to 'configmgr')
-rw-r--r--configmgr/source/xcuparser.cxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/configmgr/source/xcuparser.cxx b/configmgr/source/xcuparser.cxx
index 6ee5c82a6795..2d6592346a39 100644
--- a/configmgr/source/xcuparser.cxx
+++ b/configmgr/source/xcuparser.cxx
@@ -934,6 +934,16 @@ void XcuParser::handleGroupNode(
state_.push(State(true)); // ignored
return;
}
+ Node::Kind kind = child->kind();
+ if (kind != Node::KIND_GROUP && kind != Node::KIND_SET) {
+ throw css::uno::RuntimeException(
+ (rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("bad <node> \"")) +
+ name +
+ rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM("\" of non group/set kind in ")) +
+ reader.getUrl()),
+ css::uno::Reference< css::uno::XInterface >());
+ }
if (op != OPERATION_MODIFY && op != OPERATION_FUSE) {
throw css::uno::RuntimeException(
(rtl::OUString(