From 70c98ff99451db448485b12344c2bef40697a97b Mon Sep 17 00:00:00 2001 From: Chinmay Garde Date: Tue, 22 Sep 2015 15:00:36 -0700 Subject: [PATCH] Generate unique SkPicture trace files each time a trace is requested --- sky/shell/tracing_controller.cc | 11 ++++++++--- sky/shell/tracing_controller.h | 2 ++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/sky/shell/tracing_controller.cc b/sky/shell/tracing_controller.cc index 5c0cfd48095..1c32122779b 100644 --- a/sky/shell/tracing_controller.cc +++ b/sky/shell/tracing_controller.cc @@ -6,8 +6,9 @@ #include "base/macros.h" #include "base/trace_event/trace_config.h" #include "base/trace_event/trace_event.h" -#include "sky/shell/tracing_controller.h" #include "sky/shell/shell.h" +#include "sky/shell/tracing_controller.h" + #include namespace sky { @@ -18,7 +19,9 @@ const char kBaseTraceEnd[] = "]}"; const char kSentinel[] = "\0"; TracingController::TracingController() - : view_(nullptr), picture_tracing_enabled_(false) {} + : view_(nullptr), + picture_tracing_enabled_(false), + trace_controller_start_(base::TimeTicks::Now()) {} TracingController::~TracingController() {} @@ -121,7 +124,9 @@ TracingController::SkPictureTracingOptions TracingController::picture_tracing_options() const { return SkPictureTracingOptions( picture_tracing_path_.length() == 0 ? false : picture_tracing_enabled_, - picture_tracing_path_); + picture_tracing_path_ + + std::to_string((base::TimeTicks::Now() - trace_controller_start_) + .InMillisecondsRoundedUp())); } void TracingController::set_picture_tracing_path(const std::string& path) { diff --git a/sky/shell/tracing_controller.h b/sky/shell/tracing_controller.h index 96c6281fdd5..71934130121 100644 --- a/sky/shell/tracing_controller.h +++ b/sky/shell/tracing_controller.h @@ -8,6 +8,7 @@ #include "base/files/file.h" #include "base/macros.h" #include "base/memory/ref_counted_memory.h" +#include "base/time/time.h" #include "mojo/data_pipe_utils/data_pipe_drainer.h" #include "mojo/public/cpp/system/data_pipe.h" #include "sky/shell/shell_view.h" @@ -52,6 +53,7 @@ class TracingController : public mojo::common::DataPipeDrainer::Client { ShellView* view_; std::string picture_tracing_path_; bool picture_tracing_enabled_; + base::TimeTicks trace_controller_start_; void StartDartTracing(); void StartBaseTracing();