diff --git a/CmdParser.cpp b/CmdParser.cpp index 27212e6..055094e 100644 --- a/CmdParser.cpp +++ b/CmdParser.cpp @@ -1,13 +1,14 @@ //---------------------------------------------------------------------------- // EgalTech 2014-2014 //---------------------------------------------------------------------------- -// File : CmdParser.cpp Data : 10.05.15 Versione : 1.5e1 +// File : CmdParser.cpp Data : 01.09.14 Versione : 1.5i1 // Contenuto : Implementazione della classe CCmdParser. // // // // Modifiche : 19.01.13 DS Creazione modulo. // 10.05.14 DS Modif. per DirReplace. +// 01.09.14 DS Il distruttore cancella gli esecutori installati. // //---------------------------------------------------------------------------- @@ -53,6 +54,13 @@ CmdParser::CmdParser( void) //---------------------------------------------------------------------------- CmdParser::~CmdParser( void) { + // pulisco lista esecutori + PCmdExecList::iterator IterCEL ; + for ( IterCEL = m_CmdExecList.begin() ; IterCEL != m_CmdExecList.end() ; ++ IterCEL) { + if ( (*IterCEL) != nullptr) + delete (*IterCEL) ; + } + m_CmdExecList.clear() ; } //---------------------------------------------------------------------------- @@ -60,6 +68,11 @@ bool CmdParser::SetExecutor( ICmdExecutor* pCmdExec) { // pulisco lista esecutori + PCmdExecList::iterator IterCEL ; + for ( IterCEL = m_CmdExecList.begin() ; IterCEL != m_CmdExecList.end() ; ++ IterCEL) { + if ( (*IterCEL) != nullptr) + delete (*IterCEL) ; + } m_CmdExecList.clear() ; // verifico la validità dell'esecutore diff --git a/EgtGeneral.rc b/EgtGeneral.rc index c88e925..0a52ed3 100644 Binary files a/EgtGeneral.rc and b/EgtGeneral.rc differ