From d317c56065bf6c386ccf66555594ecea10721597 Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Mon, 18 Jan 2010 01:14:31 +0100 Subject: fix memory leak --- src/base/songloading/songloader.cpp | 6 ++++++ test/base/songloading.cpp | 3 +++ 2 files changed, 9 insertions(+) diff --git a/src/base/songloading/songloader.cpp b/src/base/songloading/songloader.cpp index 1b900bd4..0b1e34ad 100644 --- a/src/base/songloading/songloader.cpp +++ b/src/base/songloading/songloader.cpp @@ -44,6 +44,12 @@ namespace usdx Songloader::~Songloader(void) { + std::map::iterator it; + for (it = strategies.begin(); it != strategies.end(); it++) { + delete it->second; + it->second = NULL; + } + strategies.clear(); } diff --git a/test/base/songloading.cpp b/test/base/songloading.cpp index 3119d0c4..72930f0a 100644 --- a/test/base/songloading.cpp +++ b/test/base/songloading.cpp @@ -69,6 +69,9 @@ namespace usdx //CPPUNIT_ASSERT( 0 == song->get_notesgap() ); // TODO encodeing class //CPPUNIT_ASSERT( UTF-8 == song->get_encodeing() ); + + delete song; + delete Songloader::get_instance(); } }; -- cgit v1.2.3