Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1972)

Unified Diff: base/trace_event/memory_dump_manager_unittest.cc

Issue 2592233002: [memory-infra] Make thread check at unregistration stricter for new dump providers (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: base/trace_event/memory_dump_manager_unittest.cc
diff --git a/base/trace_event/memory_dump_manager_unittest.cc b/base/trace_event/memory_dump_manager_unittest.cc
index 0da230a7ec2038c0537cb2311f63d710ade76843..e8c33af3e06b935a80911bf049ff3d6e8c3c4b01 100644
--- a/base/trace_event/memory_dump_manager_unittest.cc
+++ b/base/trace_event/memory_dump_manager_unittest.cc
@@ -1266,5 +1266,22 @@ TEST_F(MemoryDumpManagerTest, TestBackgroundTracingSetup) {
DisableTracing();
}
+TEST_F(MemoryDumpManagerTest, TestBlacklistedUnsafeUnregistration) {
+ InitializeMemoryDumpManager(false /* is_coordinator */);
+ MockMemoryDumpProvider mdp1;
+ RegisterDumpProvider(&mdp1, nullptr, kDefaultOptions,
+ "BlacklistTestDumpProvider");
+ // Not calling UnregisterAndDeleteDumpProviderSoon() should not crash.
+ mdm_->UnregisterDumpProvider(&mdp1);
+
+ Thread thread("test thread");
+ thread.Start();
+ RegisterDumpProvider(&mdp1, thread.task_runner(), kDefaultOptions,
+ "BlacklistTestDumpProvider");
+ // Unregistering on wrong thread should not crash.
+ mdm_->UnregisterDumpProvider(&mdp1);
+ thread.Stop();
+}
+
} // namespace trace_event
} // namespace base
« base/trace_event/memory_dump_manager.cc ('K') | « base/trace_event/memory_dump_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698