writerfilter/source/dmapper/PropertyMap.cxx |   27 +++++++++++++++++----------
 1 file changed, 17 insertions(+), 10 deletions(-)

New commits:
commit 0ba2f0d2e5aa7e854a5e5a435948523577a5e89a
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Mon Nov 18 10:01:25 2024 +0000
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Fri Nov 22 10:31:16 2024 +0100

    crashtesting: crash on import of rtf exported from forum-en-32886.odt
    
    see: git diff -w
    Change-Id: Id50e45e53b7b433d6c468038a7de14441f4ee560
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176707
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176988
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>

diff --git a/writerfilter/source/dmapper/PropertyMap.cxx 
b/writerfilter/source/dmapper/PropertyMap.cxx
index 393142483710..eaadc04e6381 100644
--- a/writerfilter/source/dmapper/PropertyMap.cxx
+++ b/writerfilter/source/dmapper/PropertyMap.cxx
@@ -1213,18 +1213,25 @@ void 
SectionPropertyMap::HandleMarginsHeaderFooter(DomainMapper_Impl& rDM_Impl)
     {
         uno::Reference<beans::XPropertySet> xDefaultPageStyle(
                     rDM_Impl.GetPageStyles()->getByName("Standard"), 
uno::UNO_QUERY_THROW);
-        for (const beans::Property& rProp : 
m_aPageStyle->getPropertySetInfo()->getProperties())
+        if (!m_aPageStyle)
         {
-            if (!rProp.Name.startsWith("Fill")) // only copy XATTR_FILL 
properties
-                continue;
-            try
-            {
-                const uno::Any aFillValue = 
xDefaultPageStyle->getPropertyValue(rProp.Name);
-                m_aPageStyle->setPropertyValue(rProp.Name, aFillValue);
-            }
-            catch (uno::Exception&)
+            SAL_WARN( "writerfilter", "No Page Style!" );
+        }
+        else
+        {
+            for (const beans::Property& rProp : 
m_aPageStyle->getPropertySetInfo()->getProperties())
             {
-                DBG_UNHANDLED_EXCEPTION("writerfilter", "Exception setting 
page background fill");
+                if (!rProp.Name.startsWith("Fill")) // only copy XATTR_FILL 
properties
+                    continue;
+                try
+                {
+                    const uno::Any aFillValue = 
xDefaultPageStyle->getPropertyValue(rProp.Name);
+                    m_aPageStyle->setPropertyValue(rProp.Name, aFillValue);
+                }
+                catch (uno::Exception&)
+                {
+                    DBG_UNHANDLED_EXCEPTION("writerfilter", "Exception setting 
page background fill");
+                }
             }
         }
     }

Reply via email to