diff options
author | Andras Timar <andras.timar@collabora.com> | 2014-04-24 21:50:26 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-04-25 19:42:25 +0000 |
commit | d1d25c8cbc2962ce2501b4ed6034d2e4e4ccba9a (patch) | |
tree | 97ef0307a40103bd5a592009162010b1b0c0988c /sfx2 | |
parent | 6b7f07e3dbd990fd63c707d9297b4715e6e3957d (diff) |
fdo#77242 fix crash
Change-Id: Ic28b2dccc02627446a794929fe970495b15eb0e1
Reviewed-on: https://gerrit.libreoffice.org/9154
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/dialog/tabdlg.cxx | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sfx2/source/dialog/tabdlg.cxx b/sfx2/source/dialog/tabdlg.cxx index 95bdbad10760..065a23c8e3d4 100644 --- a/sfx2/source/dialog/tabdlg.cxx +++ b/sfx2/source/dialog/tabdlg.cxx @@ -1270,7 +1270,7 @@ IMPL_LINK( SfxTabDialog, ActivatePageHdl, TabControl *, pTabCtrl ) */ { - sal_uInt16 const nId = pTabCtrl->GetCurPageId(); + sal_uInt16 nId = pTabCtrl->GetCurPageId(); DBG_ASSERT( pImpl->aData.size(), "no Pages registered" ); SFX_APP(); @@ -1278,6 +1278,16 @@ IMPL_LINK( SfxTabDialog, ActivatePageHdl, TabControl *, pTabCtrl ) // Tab Page schon da? SfxTabPage* pTabPage = dynamic_cast<SfxTabPage*> (pTabCtrl->GetTabPage( nId )); Data_Impl* pDataObject = Find( pImpl->aData, nId ); + + //UUUU fallback to 1st page when requested one does not exist + if(!pDataObject && pTabCtrl->GetPageCount()) + { + pTabCtrl->SetCurPageId(pTabCtrl->GetPageId(0)); + nId = pTabCtrl->GetCurPageId(); + pTabPage = dynamic_cast< SfxTabPage* >(pTabCtrl->GetTabPage(nId)); + pDataObject = Find(pImpl->aData, nId); + } + DBG_ASSERT( pDataObject, "Id not known" ); // Create TabPage if possible: |