diff options
author | Alexander Sulfrian <alexander@sulfrian.net> | 2010-01-18 01:14:31 +0100 |
---|---|---|
committer | Alexander Sulfrian <alexander@sulfrian.net> | 2013-01-05 17:17:44 +0100 |
commit | d317c56065bf6c386ccf66555594ecea10721597 (patch) | |
tree | 0aedbfd12346fae2fac3d2e1100ea34202f3312e | |
parent | 5009375468b780cfeb0aac7e28425699991c621b (diff) | |
download | usdx-d317c56065bf6c386ccf66555594ecea10721597.tar.gz usdx-d317c56065bf6c386ccf66555594ecea10721597.tar.xz usdx-d317c56065bf6c386ccf66555594ecea10721597.zip |
fix memory leak
Diffstat (limited to '')
-rw-r--r-- | src/base/songloading/songloader.cpp | 6 | ||||
-rw-r--r-- | test/base/songloading.cpp | 3 |
2 files changed, 9 insertions, 0 deletions
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<std::string, SongloadingStrategy*>::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(); } }; |