diff options
author | Josh Stone <jistone@redhat.com> | 2009-09-02 18:40:14 -0700 |
---|---|---|
committer | Josh Stone <jistone@redhat.com> | 2009-09-02 18:40:14 -0700 |
commit | 7a1921492e38221e1552b7698f001fa70d0e0e8b (patch) | |
tree | e03be011e1b60eea31fb06efc05e4952ad9780ed /dwflpp.cxx | |
parent | 64deb08509bf9682e7d3b8141399c5603edb2df2 (diff) | |
download | systemtap-steved-7a1921492e38221e1552b7698f001fa70d0e0e8b.tar.gz systemtap-steved-7a1921492e38221e1552b7698f001fa70d0e0e8b.tar.xz systemtap-steved-7a1921492e38221e1552b7698f001fa70d0e0e8b.zip |
Delete stuff that dwflpp newed
* dwflpp.cxx (dwflpp::~dwflpp): Delete all of the caches.
Diffstat (limited to 'dwflpp.cxx')
-rw-r--r-- | dwflpp.cxx | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -93,6 +93,23 @@ dwflpp::dwflpp(systemtap_session & session, const vector<string>& names): dwflpp::~dwflpp() { free(cached_scopes); + + for (module_cu_cache_t::iterator it = module_cu_cache.begin(); + it != module_cu_cache.end(); ++it) + delete it->second; + + for (mod_cu_function_cache_t::iterator it = cu_function_cache.begin(); + it != cu_function_cache.end(); ++it) + delete it->second; + + for (cu_inl_function_cache_t::iterator it = cu_inl_function_cache.begin(); + it != cu_inl_function_cache.end(); ++it) + delete it->second; + + for (mod_cu_function_cache_t::iterator it = global_alias_cache.begin(); + it != global_alias_cache.end(); ++it) + delete it->second; + if (dwfl) dwfl_end(dwfl); } |