summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--unoxml/source/rdf/librdf_repository.cxx25
1 files changed, 17 insertions, 8 deletions
diff --git a/unoxml/source/rdf/librdf_repository.cxx b/unoxml/source/rdf/librdf_repository.cxx
index b7333f6fb222..2cdcdaa51104 100644
--- a/unoxml/source/rdf/librdf_repository.cxx
+++ b/unoxml/source/rdf/librdf_repository.cxx
@@ -1599,15 +1599,24 @@ throw (uno::RuntimeException, lang::IllegalArgumentException,
} else {
m_RDFaXHTMLContentSet.insert(sXmlId);
}
- for (::std::vector< ::boost::shared_ptr<librdf_TypeConverter::Resource> >
- ::iterator iter = predicates.begin(); iter != predicates.end();
- ++iter)
+ try
{
- addStatementGraph_Lock(
- librdf_TypeConverter::Statement(pSubject,
- ::boost::dynamic_pointer_cast<librdf_TypeConverter::URI>(*iter),
- pContent),
- sContext, true);
+ for (::std::vector< ::boost::shared_ptr<librdf_TypeConverter::Resource> >
+ ::iterator iter = predicates.begin(); iter != predicates.end();
+ ++iter)
+ {
+ addStatementGraph_Lock(
+ librdf_TypeConverter::Statement(pSubject,
+ ::boost::dynamic_pointer_cast<librdf_TypeConverter::URI>(*iter),
+ pContent),
+ sContext, true);
+ }
+ }
+ catch (const container::NoSuchElementException& e)
+ {
+ throw lang::WrappedTargetRuntimeException(
+ "librdf_Repository::setStatementRDFa: "
+ "cannot addStatementGraph", *this, uno::makeAny(e));
}
}