| Index: base/debug/trace_event_unittest.cc
|
| diff --git a/base/debug/trace_event_unittest.cc b/base/debug/trace_event_unittest.cc
|
| index 3fbc777203e7fbfc56c9abefc56fd7a4de0b5617..f42fbf790f19fc37fce0e514eb01dd78f7dc1fa8 100644
|
| --- a/base/debug/trace_event_unittest.cc
|
| +++ b/base/debug/trace_event_unittest.cc
|
| @@ -44,9 +44,11 @@ class TraceEventTestFixture : public testing::Test {
|
| private:
|
| // We want our singleton torn down after each test.
|
| ShadowingAtExitManager at_exit_manager_;
|
| + Lock lock_;
|
| };
|
|
|
| void TraceEventTestFixture::ManualTestSetUp() {
|
| + TraceLog::DeleteForTesting();
|
| TraceLog::Resurrect();
|
| TraceLog* tracelog = TraceLog::GetInstance();
|
| ASSERT_TRUE(tracelog);
|
| @@ -58,6 +60,7 @@ void TraceEventTestFixture::ManualTestSetUp() {
|
|
|
| void TraceEventTestFixture::OnTraceDataCollected(
|
| scoped_refptr<TraceLog::RefCountedString> json_events_str) {
|
| + AutoLock lock(lock_);
|
| trace_string_ += json_events_str->data;
|
|
|
| scoped_ptr<Value> root;
|
| @@ -529,9 +532,9 @@ TEST_F(TraceEventTestFixture, DataCapturedOnThread) {
|
| FROM_HERE, NewRunnableFunction(&TraceWithAllMacroVariants,
|
| &task_complete_event));
|
| task_complete_event.Wait();
|
| + thread.Stop();
|
|
|
| TraceLog::GetInstance()->SetEnabled(false);
|
| - thread.Stop();
|
| ValidateAllTraceMacrosCreatedData(trace_parsed_, trace_string_);
|
| }
|
|
|
| @@ -557,14 +560,14 @@ TEST_F(TraceEventTestFixture, DataCapturedManyThreads) {
|
| task_complete_events[i]->Wait();
|
| }
|
|
|
| - TraceLog::GetInstance()->SetEnabled(false);
|
| -
|
| for (int i = 0; i < num_threads; i++) {
|
| threads[i]->Stop();
|
| delete threads[i];
|
| delete task_complete_events[i];
|
| }
|
|
|
| + TraceLog::GetInstance()->SetEnabled(false);
|
| +
|
| ValidateInstantEventPresentOnEveryThread(trace_parsed_, trace_string_,
|
| num_threads, num_events);
|
| }
|
| @@ -600,13 +603,14 @@ TEST_F(TraceEventTestFixture, ThreadNames) {
|
| }
|
|
|
| // Shut things down.
|
| - TraceLog::GetInstance()->SetEnabled(false);
|
| for (int i = 0; i < num_threads; i++) {
|
| threads[i]->Stop();
|
| delete threads[i];
|
| delete task_complete_events[i];
|
| }
|
|
|
| + TraceLog::GetInstance()->SetEnabled(false);
|
| +
|
| std::string tmp;
|
| int tmp_int;
|
| DictionaryValue* item;
|
|
|