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

New commits:
commit df1be683ab935fe5362750360508ba69eb415afb
Author:     nd101 <f...@nd.com.cn>
AuthorDate: Wed Mar 25 13:43:32 2020 +0800
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Wed Mar 25 17:44:22 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.gran...@collabora.co.uk>

diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx
index eceae6273d06..76b1737e125a 100644
--- a/oox/source/drawingml/shape.cxx
+++ b/oox/source/drawingml/shape.cxx
@@ -942,11 +942,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();
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to