diff options
author | RĂ¼diger Timm <rt@openoffice.org> | 2006-02-09 13:06:20 +0000 |
---|---|---|
committer | RĂ¼diger Timm <rt@openoffice.org> | 2006-02-09 13:06:20 +0000 |
commit | 4c4f419c7bc88123fbb438e532919ba8c829bcbe (patch) | |
tree | 1065413fc34b4aa2d258e997624d01a0c67b2a8f /sfx2/source/appl/appopen.cxx | |
parent | 5b68f9ebf6fe8251d4d6145a24f3b51b8eb7ed32 (diff) |
INTEGRATION: CWS fwk32 (1.100.68); FILE MERGED
2006/01/20 13:01:23 mba 1.100.68.1: #128153#: sfx was not aware of exceptions thrown in ctor of ViewShells
Diffstat (limited to 'sfx2/source/appl/appopen.cxx')
-rw-r--r-- | sfx2/source/appl/appopen.cxx | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/sfx2/source/appl/appopen.cxx b/sfx2/source/appl/appopen.cxx index 80b2239e0f..2bd1991fce 100644 --- a/sfx2/source/appl/appopen.cxx +++ b/sfx2/source/appl/appopen.cxx @@ -4,9 +4,9 @@ * * $RCSfile: appopen.cxx,v $ * - * $Revision: 1.102 $ + * $Revision: 1.103 $ * - * last change: $Author: rt $ $Date: 2006-02-09 13:57:14 $ + * last change: $Author: rt $ $Date: 2006-02-09 14:06:20 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -830,7 +830,6 @@ const SfxPoolItem* SfxApplication::NewDocDirectExec_ImplOld( SfxRequest& rReq ) } // View erzeugen - SfxViewFrame* pViewFrame = 0; if ( xDoc.Is() ) { SFX_REQUEST_ARG(rReq, pHidden, SfxBoolItem, SID_HIDDEN, FALSE); @@ -865,7 +864,7 @@ const SfxPoolItem* SfxApplication::NewDocDirectExec_ImplOld( SfxRequest& rReq ) { if ( pFrame->GetCurrentDocument() == xDoc || pFrame->PrepareClose_Impl( TRUE, TRUE ) == TRUE ) { - if (bHidden) + if ( bHidden ) { xDoc->RestoreNoDelete(); xDoc->OwnerLock( TRUE ); @@ -873,14 +872,16 @@ const SfxPoolItem* SfxApplication::NewDocDirectExec_ImplOld( SfxRequest& rReq ) } if ( pFrame->GetCurrentDocument() != xDoc ) - pFrame->InsertDocument( xDoc ); - pViewFrame = pFrame->GetCurrentViewFrame(); + { + if ( pFrame->InsertDocument( xDoc ) ) + rReq.SetReturnValue( SfxFrameItem( 0, pFrame ) ); + else + xDoc->DoClose(); + } } else xDoc.Clear(); } - - rReq.SetReturnValue( SfxFrameItem( 0, pFrame ) ); } return rReq.GetReturnValue(); |