diff options
author | Kurt Zenker <kz@openoffice.org> | 2006-01-03 15:19:25 +0000 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2006-01-03 15:19:25 +0000 |
commit | a4ed0e51c71c09a5020fdf1acdc72800f0063b08 (patch) | |
tree | 880a55c7a8743331a396fc2b7ebfeb8cbcbfee29 /sfx2 | |
parent | 1f3d7d76656149e6908a0d5be9a568090012ba77 (diff) |
INTEGRATION: CWS dba202c (1.41.74); FILE MERGED
2005/11/30 10:18:28 oj 1.41.74.1: #125804# catch exception when thrown
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/view/frame.cxx | 39 |
1 files changed, 23 insertions, 16 deletions
diff --git a/sfx2/source/view/frame.cxx b/sfx2/source/view/frame.cxx index 9580b4677030..fa1824032de1 100644 --- a/sfx2/source/view/frame.cxx +++ b/sfx2/source/view/frame.cxx @@ -4,9 +4,9 @@ * * $RCSfile: frame.cxx,v $ * - * $Revision: 1.41 $ + * $Revision: 1.42 $ * - * last change: $Author: hr $ $Date: 2005-09-23 15:52:44 $ + * last change: $Author: kz $ $Date: 2006-01-03 16:19:25 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -1422,31 +1422,38 @@ void SfxFrame::SetWorkWindow_Impl( SfxWorkWindow* pWorkwin ) void SfxFrame::CreateWorkWindow_Impl() { - Reference < XChild > xChild( GetCurrentDocument()->GetModel(), UNO_QUERY ); SfxFrame* pFrame = this; - if ( xChild.is() ) + try { - Reference < XModel > xParent( xChild->getParent(), UNO_QUERY ); - if ( xParent.is() ) + Reference < XChild > xChild( GetCurrentDocument()->GetModel(), UNO_QUERY ); + if ( xChild.is() ) { - Reference< XController > xParentCtrler = xParent->getCurrentController(); - if ( xParentCtrler.is() ) + Reference < XModel > xParent( xChild->getParent(), UNO_QUERY ); + if ( xParent.is() ) { - Reference < XFrame > xFrame( xParentCtrler->getFrame() ); - SfxFrame* pFr = SfxFrame::GetFirst(); - while ( pFr ) + Reference< XController > xParentCtrler = xParent->getCurrentController(); + if ( xParentCtrler.is() ) { - if ( pFr->GetFrameInterface() == xFrame ) + Reference < XFrame > xFrame( xParentCtrler->getFrame() ); + SfxFrame* pFr = SfxFrame::GetFirst(); + while ( pFr ) { - pFrame = pFr; - break; - } + if ( pFr->GetFrameInterface() == xFrame ) + { + pFrame = pFr; + break; + } - pFr = SfxFrame::GetNext( *pFr ); + pFr = SfxFrame::GetNext( *pFr ); + } } } } } + catch(Exception&) + { + OSL_ENSURE(0,"SfxFrame::CreateWorkWindow_Impl: Exception cachted. Please try to submit a repoducable bug !"); + } pImp->pWorkWin = new SfxFrameWorkWin_Impl( &pFrame->GetWindow(), this, pFrame ); } |