added destructor to loaded commands
This commit is contained in:
parent
d17830ee5e
commit
0a2f6c876c
|
@ -176,6 +176,7 @@ Finally we define the key data structures and function prototypes
|
|||
typedef int (*CM_INITIAL_PASS_FUNCTION)(void *info, void *mf,
|
||||
int argc, char *[]);
|
||||
typedef void (*CM_FINAL_PASS_FUNCTION)(void *info, void *mf);
|
||||
typedef void (*CM_DESTRUCTOR_FUNCTION)(void *info);
|
||||
|
||||
typedef struct {
|
||||
unsigned char magic1;
|
||||
|
@ -184,6 +185,7 @@ Finally we define the key data structures and function prototypes
|
|||
int m_Inherited;
|
||||
CM_INITIAL_PASS_FUNCTION InitialPass;
|
||||
CM_FINAL_PASS_FUNCTION FinalPass;
|
||||
CM_DESTRUCTOR_FUNCTION Destructor;
|
||||
CM_DOC_FUNCTION GetTerseDocumentation;
|
||||
CM_DOC_FUNCTION GetFullDocumentation;
|
||||
void *ClientData;
|
||||
|
|
|
@ -28,6 +28,9 @@ public:
|
|||
this->info.CAPI = &cmStaticCAPI;
|
||||
}
|
||||
|
||||
///! clean up any memory allocated by the plugin
|
||||
~cmLoadedCommand();
|
||||
|
||||
/**
|
||||
* This is a virtual constructor for the command.
|
||||
*/
|
||||
|
@ -139,7 +142,14 @@ void cmLoadedCommand::FinalPass()
|
|||
{
|
||||
this->info.FinalPass((void *)&this->info,(void *)this->m_Makefile);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
cmLoadedCommand::~cmLoadedCommand()
|
||||
{
|
||||
if (this->info.Destructor)
|
||||
{
|
||||
this->info.Destructor((void *)&this->info);
|
||||
}
|
||||
}
|
||||
|
||||
// cmLoadCommandCommand
|
||||
|
|
Loading…
Reference in New Issue