[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - oox/source

nd101 (via logerrit) logerrit at kemper.freedesktop.org
Wed Mar 25 20:28:38 UTC 2020


 oox/source/drawingml/shape.cxx |   13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

New commits:
commit 3142872bcba19b6c4d60b464fc9b14293860348d
Author:     nd101 <Fong at nd.com.cn>
AuthorDate: Wed Mar 25 13:43:32 2020 +0800
Commit:     Xisco Faulí <xiscofauli at libreoffice.org>
CommitDate: Wed Mar 25 21:28:08 2020 +0100

    tdf#131553 a null pointer crashes Impress
    
    When constructing a shape object from property EmbeddedObject,
    it may return null object. Check the returned value first.
    
    Change-Id: I9d7a2d9c0c919007ae2a34a0af86dea5639b1bd6
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91024
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
    (cherry picked from commit df1be683ab935fe5362750360508ba69eb415afb)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90959
    Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>

diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx
index f1da411ec4af..cce8b9ba7bbc 100644
--- a/oox/source/drawingml/shape.cxx
+++ b/oox/source/drawingml/shape.cxx
@@ -944,11 +944,14 @@ Reference< XShape > const & Shape::createAndInsert(
             xSet->setPropertyValue("CLSID", uno::makeAny(name.GetHexName()));
             uno::Reference<embed::XEmbeddedObject> const xObj(
                 xSet->getPropertyValue("EmbeddedObject"), uno::UNO_QUERY);
-            uno::Reference<uno::XInterface> const xMathModel(xObj->getComponent());
-            oox::FormulaImportBase *const pMagic(
-                    dynamic_cast<oox::FormulaImportBase*>(xMathModel.get()));
-            assert(pMagic);
-            pMagic->readFormulaOoxml(*pMathXml);
+            if (xObj.is())
+            {
+                uno::Reference<uno::XInterface> const xMathModel(xObj->getComponent());
+                oox::FormulaImportBase *const pMagic(
+                        dynamic_cast<oox::FormulaImportBase*>(xMathModel.get()));
+                assert(pMagic);
+                pMagic->readFormulaOoxml(*pMathXml);
+            }
         }
 
         const GraphicHelper& rGraphicHelper = rFilterBase.getGraphicHelper();


More information about the Libreoffice-commits mailing list