From 7a1921492e38221e1552b7698f001fa70d0e0e8b Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Wed, 2 Sep 2009 18:40:14 -0700 Subject: Delete stuff that dwflpp newed * dwflpp.cxx (dwflpp::~dwflpp): Delete all of the caches. --- dwflpp.cxx | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'dwflpp.cxx') diff --git a/dwflpp.cxx b/dwflpp.cxx index 9dcfd002..3c6a106d 100644 --- a/dwflpp.cxx +++ b/dwflpp.cxx @@ -93,6 +93,23 @@ dwflpp::dwflpp(systemtap_session & session, const vector& 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); } -- cgit