summaryrefslogtreecommitdiff
path: root/base/at_exit.cc
diff options
context:
space:
mode:
Diffstat (limited to 'base/at_exit.cc')
-rw-r--r--base/at_exit.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/base/at_exit.cc b/base/at_exit.cc
index 5dcc83cb2f..e0025ea0d3 100644
--- a/base/at_exit.cc
+++ b/base/at_exit.cc
@@ -81,6 +81,10 @@ void AtExitManager::ProcessCallbacksNow() {
g_top_manager->processing_callbacks_ = true;
}
+ // Relax the cross-thread access restriction to non-thread-safe RefCount.
+ // It's safe since all other threads should be terminated at this point.
+ ScopedAllowCrossThreadRefCountAccess allow_cross_thread_ref_count_access;
+
while (!tasks.empty()) {
base::Closure task = tasks.top();
task.Run();