Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
Actor Framework
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
cpp-libs
Actor Framework
Commits
770a1e8a
Commit
770a1e8a
authored
Mar 06, 2015
by
Dominik Charousset
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix heap-use-after-free with logging enabled
parent
bdd75627
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
9 additions
and
11 deletions
+9
-11
libcaf_core/src/node_id.cpp
libcaf_core/src/node_id.cpp
+1
-1
libcaf_core/src/singletons.cpp
libcaf_core/src/singletons.cpp
+7
-9
libcaf_core/src/uniform_type_info_map.cpp
libcaf_core/src/uniform_type_info_map.cpp
+1
-1
No files found.
libcaf_core/src/node_id.cpp
View file @
770a1e8a
...
...
@@ -164,7 +164,7 @@ node_id::data::~data() {
}
void
node_id
::
data
::
stop
()
{
CAF_LOG_TRACE
(
""
);
// nop
}
// initializes singleton
...
...
libcaf_core/src/singletons.cpp
View file @
770a1e8a
...
...
@@ -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
);
}
...
...
libcaf_core/src/uniform_type_info_map.cpp
View file @
770a1e8a
...
...
@@ -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
()
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment