[Libreoffice-commits] core.git: editeng/source sw/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Thu Oct 18 10:32:57 UTC 2018
editeng/source/items/frmitems.cxx | 3 ++-
sw/source/core/unocore/unoidx.cxx | 6 ++++++
2 files changed, 8 insertions(+), 1 deletion(-)
New commits:
commit 81974604d859da8365146ce126f3584d902224b8
Author: Michael Stahl <Michael.Stahl at cib.de>
AuthorDate: Fri Oct 12 16:37:32 2018 +0200
Commit: Tomaž Vajngerl <quikee at gmail.com>
CommitDate: Thu Oct 18 12:31:48 2018 +0200
editeng: do not throw from QueryValue implementation
None of the other QueryValue throw; in case of a problem they return
false without initialising the Any.
On the one hand, it would be useful to throw an exception for this
special property that has now become Write-Only, so that API users
get a better hint what is going wrong; on the other hand, it breaks
various other things like the various multi-property interfaces that
call QueryValue for multiple items (there are 3 such loops in
SwAccessibleParagraph alone).
(throw was introduced in 7a8ed362eb163ac15a000ba1cfc74b58315800a1)
It turns out there is even a test for the exception on ToX.
Change-Id: Id60ff43544f7399ce869227bfd6fb933dbaea3be
Reviewed-on: https://gerrit.libreoffice.org/61719
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>
diff --git a/editeng/source/items/frmitems.cxx b/editeng/source/items/frmitems.cxx
index 44b6ffaab159..910de8dcd434 100644
--- a/editeng/source/items/frmitems.cxx
+++ b/editeng/source/items/frmitems.cxx
@@ -3309,7 +3309,8 @@ bool SvxBrushItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const
case MID_GRAPHIC_URL:
{
- throw uno::RuntimeException("Getting from this property is not supported");
+ SAL_INFO("editeng.items", "Getting GraphicURL property is not supported");
+ return false;
}
break;
case MID_GRAPHIC:
diff --git a/sw/source/core/unocore/unoidx.cxx b/sw/source/core/unocore/unoidx.cxx
index 1e62a996b2bf..9f2eae93fbed 100644
--- a/sw/source/core/unocore/unoidx.cxx
+++ b/sw/source/core/unocore/unoidx.cxx
@@ -36,6 +36,7 @@
#include <cppuhelper/supportsservice.hxx>
#include <vcl/svapp.hxx>
#include <editeng/unolingu.hxx>
+#include <editeng/memberids.h>
#include <hints.hxx>
#include <cmdid.h>
#include <swtypes.hxx>
@@ -886,6 +887,11 @@ SwXDocumentIndex::getPropertyValue(const OUString& rPropertyName)
"Unknown property: " + rPropertyName,
static_cast< cppu::OWeakObject * >(this));
}
+ // TODO: is this the best approach to tell API clients about the change?
+ if (pEntry->nWID == RES_BACKGROUND && pEntry->nMemberId == MID_GRAPHIC_URL)
+ {
+ throw uno::RuntimeException("Getting GraphicURL property is not supported");
+ }
SwSectionFormat *const pSectionFormat( m_pImpl->GetSectionFormat() );
SwTOXBase* pTOXBase = nullptr;
More information about the Libreoffice-commits
mailing list