diff options
author | wangxianzhu@chromium.org <wangxianzhu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-09 04:25:02 +0000 |
---|---|---|
committer | wangxianzhu@chromium.org <wangxianzhu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-09 04:25:02 +0000 |
commit | db144e7ce2db08607d7e9348f20824a9cd592585 (patch) | |
tree | f7e354800c372782d67fef69db4bab5419540ca4 /cc/debug/rendering_stats.cc | |
parent | 0b05803f198b77967a24148e3cc42e5ec0444d82 (diff) | |
download | chromium_src-db144e7ce2db08607d7e9348f20824a9cd592585.zip chromium_src-db144e7ce2db08607d7e9348f20824a9cd592585.tar.gz chromium_src-db144e7ce2db08607d7e9348f20824a9cd592585.tar.bz2 |
Make ConvertableToTraceFormat ref-counted
Previously though TraceEvent is copyable, the copy has side-effect that
will clear the convertable pointers in the source TraceEvent. This
hadn't been a problem before https://codereview.chromium.org/23531042/
which added TraceBuffer::Clone() so exposed the potential problem.
Make ConvertableToTraceFormat ref-counted to allow copying of
TraceEvents.
This also simplifies the client code and trace_event.h because
scoped_refptrs can be assigned just like other types of variables.
TEST=existing tests
BUG=none
Review URL: https://codereview.chromium.org/26266003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227671 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/debug/rendering_stats.cc')
-rw-r--r-- | cc/debug/rendering_stats.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/cc/debug/rendering_stats.cc b/cc/debug/rendering_stats.cc index 29ef505..6d9f615 100644 --- a/cc/debug/rendering_stats.cc +++ b/cc/debug/rendering_stats.cc @@ -19,7 +19,7 @@ void MainThreadRenderingStats::IssueTraceEvent() const { "data", AsTraceableData()); } -scoped_ptr<base::debug::ConvertableToTraceFormat> +scoped_refptr<base::debug::ConvertableToTraceFormat> MainThreadRenderingStats::AsTraceableData() const { scoped_ptr<base::DictionaryValue> record_data(new base::DictionaryValue()); record_data->SetInteger("frame_count", frame_count); @@ -49,7 +49,7 @@ void ImplThreadRenderingStats::IssueTraceEvent() const { "data", AsTraceableData()); } -scoped_ptr<base::debug::ConvertableToTraceFormat> +scoped_refptr<base::debug::ConvertableToTraceFormat> ImplThreadRenderingStats::AsTraceableData() const { scoped_ptr<base::DictionaryValue> record_data(new base::DictionaryValue()); record_data->SetInteger("frame_count", frame_count); |