diff options
author | Michael Stahl <mstahl@redhat.com> | 2013-07-10 12:38:16 +0200 |
---|---|---|
committer | Bosdonnat Cedric <cedric.bosdonnat@free.fr> | 2013-07-10 12:13:19 +0000 |
commit | e8be529787b89f5a3f7d71c8885503e08d34a9a3 (patch) | |
tree | 844d6407fd0a0d3ab8d653dca90a4274daec7a9a | |
parent | 630eff26918d7693f208d8919787aab8453ddc28 (diff) |
writerfilter: not every field has a Content property
... so don't try to get it unconditionally (but SetExpression does
have it).
(regression from c7e4264bed4e77daccf2f72063e5e00f1008c3cf)
Change-Id: I14d24bd70f569ba0bc4f1e48d56ebf43c1441783
(cherry picked from commit 1c90902cbccd4e4f5946dfc454da351c33c24f71)
Reviewed-on: https://gerrit.libreoffice.org/4808
Reviewed-by: Bosdonnat Cedric <cedric.bosdonnat@free.fr>
Tested-by: Bosdonnat Cedric <cedric.bosdonnat@free.fr>
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index c4b469799727..0be95a227734 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -3313,9 +3313,12 @@ void DomainMapper_Impl::SetFieldResult( OUString& rResult ) bool bIsSetExpression = xServiceInfo->supportsService("com.sun.star.text.TextField.SetExpression"); // If we already have content set, then use the current presentation rtl::OUString sValue; - uno::Any aValue = xFieldProperties->getPropertyValue( - rPropNameSupplier.GetName(PROP_CONTENT)); - aValue >>= sValue; + if (bIsSetExpression) + { // this will throw for field types without Content + uno::Any aValue(xFieldProperties->getPropertyValue( + rPropNameSupplier.GetName(PROP_CONTENT))); + aValue >>= sValue; + } xFieldProperties->setPropertyValue( rPropNameSupplier.GetName(bIsSetExpression && sValue.isEmpty()? PROP_CONTENT : PROP_CURRENT_PRESENTATION), uno::makeAny( rResult )); |