Commit 770a1e8a authored by Dominik Charousset's avatar Dominik Charousset

Fix heap-use-after-free with logging enabled

parent bdd75627
......@@ -164,7 +164,7 @@ node_id::data::~data() {
}
void node_id::data::stop() {
CAF_LOG_TRACE("");
// nop
}
// initializes singleton
......
......@@ -79,26 +79,24 @@ void singletons::stop_singletons() {
stop(s_scheduling_coordinator);
CAF_LOGF_DEBUG("stop actor registry");
stop(s_actor_registry);
CAF_LOGF_DEBUG("stop type info map");
stop(s_uniform_type_info_map);
stop(s_node_id);
// dispose singletons, i.e., release memory
CAF_LOGF_DEBUG("dispose scheduler");
dispose(s_scheduling_coordinator);
CAF_LOGF_DEBUG("dispose plugins");
for (auto& plugin : s_plugins) {
dispose(plugin);
}
CAF_LOGF_DEBUG("dispose registry");
dispose(s_actor_registry);
CAF_LOGF_DEBUG("dispose group manager");
dispose(s_group_manager);
CAF_LOGF_DEBUG("dispose map");
dispose(s_uniform_type_info_map);
CAF_LOGF_DEBUG("dispose scheduler");
dispose(s_scheduling_coordinator);
CAF_LOGF_DEBUG("dispose registry");
dispose(s_actor_registry);
// final steps
CAF_LOGF_DEBUG("stop and dispose logger, bye");
stop(s_logger);
dispose(s_logger);
stop(s_uniform_type_info_map);
dispose(s_uniform_type_info_map);
stop(s_node_id);
dispose(s_node_id);
}
......
......@@ -728,7 +728,7 @@ uniform_type_info_map* uniform_type_info_map::create_singleton() {
}
void uniform_type_info_map::stop() {
CAF_LOG_TRACE("");
// nop
}
uniform_type_info_map::~uniform_type_info_map() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment