Should fix Bug #1360470 and Bug #1359502 .
@ -308,6 +308,13 @@ void PGM_BASE::destroy()
m_html_ctrl = 0;
}
void PGM_BASE::ReleaseFile()
{
// Release the current file marked in use.
delete m_file_checker;
m_file_checker = 0;
void PGM_BASE::SetEditorName( const wxString& aFileName )
@ -251,7 +251,7 @@ wxConfigBase* PROJECT::configCreate( const SEARCH_STACK& aSList,
if( wxFileName( cur_pro_fn ).IsFileReadable() )
// Note: currently, aGroupName is not used.
// Previoulsy, the version off aGroupName was tested, but it
// Previoulsy, the version of aGroupName was tested, but it
// was useless, and if the version is important,
// this is not the right place here, because configCreate does know anything
// about info stored in this config file.
@ -417,6 +417,8 @@ SCH_EDIT_FRAME::~SCH_EDIT_FRAME()
m_undoItem = NULL;
g_RootSheet = NULL;
m_findReplaceData = NULL;
Pgm().ReleaseFile(); // Release the lock on root file
void SCH_EDIT_FRAME::SetRepeatItem( SCH_ITEM* aItem )
@ -179,6 +179,12 @@ public:
*/
VTBL_ENTRY bool LockFile( const wxString& aFileName );
/**
* Function ReleaseFile
* Release the current file marked in use.
VTBL_ENTRY void ReleaseFile();
* Function App
* returns a bare naked wxApp, which may come from wxPython, SINGLE_TOP, or kicad.exe.
@ -486,6 +486,8 @@ PCB_EDIT_FRAME::~PCB_EDIT_FRAME()
m_Macros[i].m_Record.clear();
delete m_drc;
Pgm().ReleaseFile(); // Release the lock on PCB file