| Index: base/trace_event/memory_dump_manager.cc
|
| diff --git a/base/trace_event/memory_dump_manager.cc b/base/trace_event/memory_dump_manager.cc
|
| index bf631b34bea033cba4c95f76d4f73439ed703d3f..ca824eb16245a6256a34d9bcb289338047918ab9 100644
|
| --- a/base/trace_event/memory_dump_manager.cc
|
| +++ b/base/trace_event/memory_dump_manager.cc
|
| @@ -9,6 +9,7 @@
|
| #include "base/compiler_specific.h"
|
| #include "base/trace_event/memory_dump_provider.h"
|
| #include "base/trace_event/process_memory_dump.h"
|
| +#include "base/trace_event/trace_event_argument.h"
|
|
|
| // TODO(primiano): in a separate CL rename DeleteTraceLogForTesting into
|
| // something like base::internal::TeardownSingletonForTesting so we don't have
|
| @@ -96,15 +97,14 @@ void MemoryDumpManager::BroadcastDumpRequest() {
|
| // Creates a dump point for the current process and appends it to the trace.
|
| void MemoryDumpManager::CreateLocalDumpPoint() {
|
| AutoLock lock(lock_);
|
| - // TRACE_EVENT_* macros don't induce scoped_refptr type inference, hence we
|
| - // need the base ConvertableToTraceFormat and the upcast below. The
|
| - // alternative would be unnecessarily expensive (double Acquire/Release).
|
| - scoped_refptr<ConvertableToTraceFormat> pmd(new ProcessMemoryDump());
|
| + scoped_ptr<ProcessMemoryDump> pmd(new ProcessMemoryDump());
|
|
|
| for (MemoryDumpProvider* dump_provider : dump_providers_enabled_) {
|
| - dump_provider->DumpInto(static_cast<ProcessMemoryDump*>(pmd.get()));
|
| + dump_provider->DumpInto(pmd.get());
|
| }
|
|
|
| + scoped_refptr<TracedValue> value(new TracedValue());
|
| + pmd->AsValueInto(value.get());
|
| // TODO(primiano): add the dump point to the trace at this point.
|
| }
|
|
|
|
|