diff options
author | Kurt Zenker <kz@openoffice.org> | 2005-01-13 16:50:11 +0000 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2005-01-13 16:50:11 +0000 |
commit | 923504b77b571003f6f116a450006d3b93609e59 (patch) | |
tree | d68d311b89c39bdb8df241955b6002d88a393eb0 /basctl | |
parent | 2159ba66bc4ff4f827b1d021e83cf85ae3bbe3b8 (diff) |
INTEGRATION: CWS tbe15 (1.16.56); FILE MERGED
2004/12/10 17:22:31 tbe 1.16.56.1: #i38314# Crash in Basic Macro dialog
Diffstat (limited to 'basctl')
-rw-r--r-- | basctl/source/basicide/bastype3.cxx | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/basctl/source/basicide/bastype3.cxx b/basctl/source/basicide/bastype3.cxx index 471976a1caa5..3ebbb5e0b08f 100644 --- a/basctl/source/basicide/bastype3.cxx +++ b/basctl/source/basicide/bastype3.cxx @@ -2,9 +2,9 @@ * * $RCSfile: bastype3.cxx,v $ * - * $Revision: 1.16 $ + * $Revision: 1.17 $ * - * last change: $Author: kz $ $Date: 2004-07-23 12:04:12 $ + * last change: $Author: kz $ $Date: 2005-01-13 17:50:11 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -193,7 +193,7 @@ void BasicTreeListBox::ScanAllEntries() while ( pDocShell ) { // only if there's a corresponding window (not for remote documents) - if ( SfxViewFrame::GetFirst( pDocShell ) && !pDocShell->ISA( BasicDocShell ) ) + if ( SfxViewFrame::GetFirst( pDocShell ) && !pDocShell->ISA( BasicDocShell ) && !pDocShell->IsInPrepareClose() ) ScanEntry( pDocShell, LIBRARY_LOCATION_DOCUMENT ); pDocShell = SfxObjectShell::GetNext( *pDocShell ); @@ -446,6 +446,7 @@ bool BasicTreeListBox::IsValidEntry( SvLBoxEntry* pEntry ) BasicEntryDescriptor aDesc( GetEntryDescriptor( pEntry ) ); SfxObjectShell* pShell( aDesc.GetShell() ); + LibraryLocation eLocation( aDesc.GetLocation() ); String aLibName( aDesc.GetLibName() ); String aName( aDesc.GetName() ); String aMethodName( aDesc.GetMethodName() ); @@ -455,7 +456,9 @@ bool BasicTreeListBox::IsValidEntry( SvLBoxEntry* pEntry ) { case OBJ_TYPE_SHELL: { - bIsValid = BasicIDE::HasShell( pShell ); + bIsValid = ( !pShell || ( BasicIDE::HasShell( pShell ) && + GetRootEntryName( pShell, eLocation ) == GetEntryText( pEntry ) && + !pShell->IsInPrepareClose() ) ); } break; case OBJ_TYPE_LIBRARY: |