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.st...@cib.de>
AuthorDate: Fri Oct 12 16:37:32 2018 +0200
Commit:     Tomaž Vajngerl <qui...@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 <qui...@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;
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to