[Libreoffice-commits] core.git: oox/source

Caolán McNamara caolanm at redhat.com
Mon Mar 26 11:22:39 UTC 2018


 oox/source/ole/vbacontrol.cxx |   10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

New commits:
commit ef59333842a4833c4bcebe33f49e96f11f15275c
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Mon Mar 26 09:32:14 2018 +0100

    forcepoint #31 survive missing control model
    
    Change-Id: I37e4af560b46b4f6d9e0b87fe58493818f366d3c
    Reviewed-on: https://gerrit.libreoffice.org/51857
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/oox/source/ole/vbacontrol.cxx b/oox/source/ole/vbacontrol.cxx
index 03ed0e49aa35..51e1b04223c8 100644
--- a/oox/source/ole/vbacontrol.cxx
+++ b/oox/source/ole/vbacontrol.cxx
@@ -430,7 +430,13 @@ void VbaFormControl::importStorage( StorageBase& rStrg, const AxClassTable& rCla
 
                 for ( ; it != it_end; ++it )
                 {
-                    if ( (*it)->mxCtrlModel->getControlType() == API_CONTROL_PAGE )
+                    auto& elem = (*it)->mxCtrlModel;
+                    if (!elem)
+                    {
+                        SAL_WARN("oox", "empty control model");
+                        continue;
+                    }
+                    if (elem->getControlType() == API_CONTROL_PAGE)
                     {
                         VbaSiteModelRef xPageSiteRef = (*it)->mxSiteModel;
                         if ( xPageSiteRef.get() )
@@ -438,7 +444,7 @@ void VbaFormControl::importStorage( StorageBase& rStrg, const AxClassTable& rCla
                     }
                     else
                     {
-                        AxTabStripModel* pTabStrip = static_cast<AxTabStripModel*> ( (*it)->mxCtrlModel.get() );
+                        AxTabStripModel* pTabStrip = static_cast<AxTabStripModel*>(elem.get());
                         sCaptions = pTabStrip->maItems;
                         pMultiPage->mnActiveTab = pTabStrip->mnListIndex;
                         pMultiPage->mnTabStyle = pTabStrip->mnTabStyle;


More information about the Libreoffice-commits mailing list