Index: base/debug/trace_event_unittest.cc |
diff --git a/base/debug/trace_event_unittest.cc b/base/debug/trace_event_unittest.cc |
index 445118b6374bd1751df1468d175f7f35db6d8927..357d35c06b6fa5171d7a96609ed8b563f5d7ba8d 100644 |
--- a/base/debug/trace_event_unittest.cc |
+++ b/base/debug/trace_event_unittest.cc |
@@ -78,15 +78,22 @@ class TraceEventTestFixture : public testing::Test { |
} |
virtual void SetUp() OVERRIDE { |
- old_thread_name_ = PlatformThread::GetName(); |
+ const char* name = PlatformThread::GetName(); |
+ old_thread_name_ = name ? strdup(name) : NULL; |
} |
virtual void TearDown() OVERRIDE { |
if (TraceLog::GetInstance()) |
EXPECT_FALSE(TraceLog::GetInstance()->IsEnabled()); |
- PlatformThread::SetName(old_thread_name_ ? old_thread_name_ : ""); |
+ if (old_thread_name_) { |
+ PlatformThread::SetName(old_thread_name_); |
+ free(old_thread_name_); |
+ old_thread_name_ = NULL; |
+ } else { |
+ PlatformThread::SetName(""); |
+ } |
} |
- const char* old_thread_name_; |
+ char* old_thread_name_; |
ListValue trace_parsed_; |
base::debug::TraceResultBuffer trace_buffer_; |
base::debug::TraceResultBuffer::SimpleOutput json_output_; |