svx/source/unodraw/unoshape.cxx |   10 ++++++++++
 1 file changed, 10 insertions(+)

New commits:
commit 535c1f2561570b85c64eab846d6f95da6cf1ff64
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Wed Mar 26 08:22:50 2025 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Wed Mar 26 10:25:59 2025 +0100

    tdf#150623 reduce load time of complex calc document
    
    this is a bit of a hack
    
    Change-Id: Id14cae908c9139f571ec212089efa5e44d4d5ee9
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183321
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/svx/source/unodraw/unoshape.cxx b/svx/source/unodraw/unoshape.cxx
index abe48784d1e1..37ea26ef7ec4 100644
--- a/svx/source/unodraw/unoshape.cxx
+++ b/svx/source/unodraw/unoshape.cxx
@@ -1513,7 +1513,17 @@ void SvxShape::_setPropertyValue( const OUString& 
rPropertyName, const uno::Any&
     }
 
     if (!pMap)
+    {
+        // The oox layer sets these properties willy-nilly on objects, even if 
the objects do not support them.
+        // And then it ignores the resulting exceptions, but exception 
throwing and catching becomes expensive
+        // with complex spreadsheets. So just ignore it here, in absense of a 
better fix.
+        if (rPropertyName == "FromWordArt" || rPropertyName == 
"GraphicColorMode" || rPropertyName == "Representation")
+        {
+            SAL_WARN("svx", "Ignoring property " << rPropertyName);
+            return;
+        }
         throw beans::UnknownPropertyException( rPropertyName, getXWeak());
+    }
 
     if ((pMap->nFlags & beans::PropertyAttribute::READONLY) != 0)
         throw beans::PropertyVetoException(

Reply via email to