eeschema: bug soved (see changelog). Doc update

This commit is contained in:
charras 2008-06-15 15:45:41 +00:00
parent 405cb2ab0b
commit dd58ea1efc
2 changed files with 15 additions and 6 deletions

View File

@ -5,6 +5,12 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with Please add newer entries at the top, list the date and your name with
email address. email address.
2008-June-15 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
+eeschema:
Bug solved: Eeschema crashed when creating a new subsheet with the same
filename as an existing filename, if loading this existing file.
2008-June-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> 2008-June-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================ ================================================================================

View File

@ -574,12 +574,15 @@ bool DrawSheetStruct::ChangeFileName( WinEDA_SchematicFrame* aFrame, const wxStr
if( IsOK( NULL, msg ) ) if( IsOK( NULL, msg ) )
{ {
LoadFromFile = true; LoadFromFile = true;
if ( m_AssociatedScreen ) // Can be NULL if loading a file when creating a new sheet
{
m_AssociatedScreen->m_RefCount--; //be careful with these m_AssociatedScreen->m_RefCount--; //be careful with these
if( m_AssociatedScreen->m_RefCount == 0 ) if( m_AssociatedScreen->m_RefCount == 0 )
SAFE_DELETE( m_AssociatedScreen ); SAFE_DELETE( m_AssociatedScreen );
m_AssociatedScreen = NULL; //will be created later m_AssociatedScreen = NULL; //will be created later
} }
} }
}
// if an associated screen exists, shared between this sheet and others sheets, what we do ? // if an associated screen exists, shared between this sheet and others sheets, what we do ?
if( m_AssociatedScreen && ( m_AssociatedScreen->m_RefCount > 1 ) ) if( m_AssociatedScreen && ( m_AssociatedScreen->m_RefCount > 1 ) )