summaryrefslogtreecommitdiffstats
path: root/cc/debug/rendering_stats_instrumentation.cc
diff options
context:
space:
mode:
authorernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-20 15:17:26 +0000
committerernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-20 15:17:26 +0000
commit77f333aa746bf1fb1cbe11b41876736682f74107 (patch)
treeff0597b0ec8580609d4c6b77b21399b0699d878a /cc/debug/rendering_stats_instrumentation.cc
parentf202649a05803aecc41fd603cd861a9a4ef1ba33 (diff)
downloadchromium_src-77f333aa746bf1fb1cbe11b41876736682f74107.zip
chromium_src-77f333aa746bf1fb1cbe11b41876736682f74107.tar.gz
chromium_src-77f333aa746bf1fb1cbe11b41876736682f74107.tar.bz2
cc: fix another data race in RenderingStatsInstrumentation.
Access to the stats was not protected by a lock. Fix by returning a copy to the stats and locking while making the copy. R=enne@chromium.org BUG=370244 Review URL: https://codereview.chromium.org/289163004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271646 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/debug/rendering_stats_instrumentation.cc')
-rw-r--r--cc/debug/rendering_stats_instrumentation.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/cc/debug/rendering_stats_instrumentation.cc b/cc/debug/rendering_stats_instrumentation.cc
index 5dbc113..d58ae80 100644
--- a/cc/debug/rendering_stats_instrumentation.cc
+++ b/cc/debug/rendering_stats_instrumentation.cc
@@ -18,6 +18,18 @@ RenderingStatsInstrumentation::RenderingStatsInstrumentation()
RenderingStatsInstrumentation::~RenderingStatsInstrumentation() {}
+MainThreadRenderingStats
+RenderingStatsInstrumentation::main_thread_rendering_stats() {
+ base::AutoLock scoped_lock(lock_);
+ return main_stats_;
+}
+
+ImplThreadRenderingStats
+RenderingStatsInstrumentation::impl_thread_rendering_stats() {
+ base::AutoLock scoped_lock(lock_);
+ return impl_stats_;
+}
+
RenderingStats RenderingStatsInstrumentation::GetRenderingStats() {
base::AutoLock scoped_lock(lock_);
RenderingStats rendering_stats;