diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2022-02-28 18:51:47 +0100 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2022-02-28 18:51:47 +0100 |
| commit | a8c59c41bc103f0336d9982369be5dd85ac68111 (patch) | |
| tree | fb6bfea03fe6b000fc7f3c4a0421388cd6a13d57 /src/engine_tab/EngineTab.cpp | |
| parent | 8f1e8fa106107c61c7ac62fa0f13340537ba4d23 (diff) | |
Fix majors memory leaks (TODO: shared_ptr for Game objects and implement ~Game())
Diffstat (limited to 'src/engine_tab/EngineTab.cpp')
| -rw-r--r-- | src/engine_tab/EngineTab.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/engine_tab/EngineTab.cpp b/src/engine_tab/EngineTab.cpp index 6db6bdd..67ddc22 100644 --- a/src/engine_tab/EngineTab.cpp +++ b/src/engine_tab/EngineTab.cpp @@ -30,7 +30,7 @@ EngineTab::EngineTab(wxWindow *parent, uciadapter::UCI *engine, } EngineTab::EngineTab(wxWindow *parent, std::string name) - : TabEngine(parent), TabInfos(TabInfos::ENGINE) { + : TabEngine(parent), TabInfos(TabInfos::ENGINE), engine(NULL) { SetLabel(name); engineName = name; confGroup = "engines/" + engineName; @@ -44,6 +44,14 @@ EngineTab::EngineTab(wxWindow *parent, std::string name) Bind(wxEVT_BUTTON, &EngineTab::OnDelete, this, ENGINE_DELETE_CONF_BUTTON); } +EngineTab::~EngineTab() { + if (engine != NULL) { + wxLogDebug("EngineTab destructor: destroying engine!"); + engine->quit(); + delete engine; + } +} + void EngineTab::OnDelete(wxCommandEvent &event) { CONFIG_OPEN(conf); conf->DeleteGroup(confGroup); |
