diff options
author | Caolán McNamara <caolanm@redhat.com> | 2018-03-26 09:32:14 +0100 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-04-21 02:53:07 +0200 |
commit | 5f9645cc4776f99636d9bf2d8c029bad0e81f553 (patch) | |
tree | 56a4a5f937031e9bed98e8299e2cc4646ef09009 | |
parent | forcepoint #32 survive missing emf paths (diff) | |
download | core-5f9645cc4776f99636d9bf2d8c029bad0e81f553.tar.gz core-5f9645cc4776f99636d9bf2d8c029bad0e81f553.zip |
forcepoint #31 survive missing control model
Change-Id: I37e4af560b46b4f6d9e0b87fe58493818f366d3c
Reviewed-on: https://gerrit.libreoffice.org/51878
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
-rw-r--r-- | oox/source/ole/vbacontrol.cxx | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/oox/source/ole/vbacontrol.cxx b/oox/source/ole/vbacontrol.cxx index 805bb2d7a504..e6f0d14b99da 100644 --- a/oox/source/ole/vbacontrol.cxx +++ b/oox/source/ole/vbacontrol.cxx @@ -431,7 +431,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() ) @@ -439,7 +445,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; |