| Index: content/browser/tracing/tracing_controller_impl_data_sinks.cc
|
| diff --git a/content/browser/tracing/tracing_controller_impl_data_sinks.cc b/content/browser/tracing/tracing_controller_impl_data_sinks.cc
|
| index a6d6e37ad1398a4df0772058d9f76cbd2bfa6eef..8732cc5998115bb2efa2581902fd8afcf3246b05 100644
|
| --- a/content/browser/tracing/tracing_controller_impl_data_sinks.cc
|
| +++ b/content/browser/tracing/tracing_controller_impl_data_sinks.cc
|
| @@ -128,11 +128,17 @@ class StringTraceDataSink : public TracingController::TraceDataSink {
|
| system_trace_ = data;
|
| }
|
|
|
| + void SetMetadata(const std::string& data) override {
|
| + metadata_ = data;
|
| + }
|
| +
|
| void Close() override {
|
| AddTraceChunkAndPassToEndpoint("]");
|
| if (!system_trace_.empty())
|
| AddTraceChunkAndPassToEndpoint(",\"systemTraceEvents\": " +
|
| system_trace_);
|
| + if (!metadata_.empty())
|
| + AddTraceChunkAndPassToEndpoint(",\"metadata\": " + metadata_);
|
| AddTraceChunkAndPassToEndpoint("}");
|
|
|
| endpoint_->ReceiveTraceFinalContents(trace_);
|
| @@ -144,6 +150,7 @@ class StringTraceDataSink : public TracingController::TraceDataSink {
|
| scoped_refptr<TracingController::TraceDataEndpoint> endpoint_;
|
| std::string trace_;
|
| std::string system_trace_;
|
| + std::string metadata_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(StringTraceDataSink);
|
| };
|
| @@ -168,6 +175,10 @@ class CompressedStringTraceDataSink : public TracingController::TraceDataSink {
|
| system_trace_ = data;
|
| }
|
|
|
| + void SetMetadata(const std::string& data) override {
|
| + metadata_ = data;
|
| + }
|
| +
|
| void Close() override {
|
| BrowserThread::PostTask(
|
| BrowserThread::FILE, FROM_HERE,
|
| @@ -255,6 +266,9 @@ class CompressedStringTraceDataSink : public TracingController::TraceDataSink {
|
| AddTraceChunkAndCompressOnFileThread(
|
| ",\"systemTraceEvents\": " + system_trace_, false);
|
| }
|
| + if (!metadata_.empty())
|
| + AddTraceChunkAndCompressOnFileThread(",\"metadata\": " + metadata_,
|
| + false);
|
| AddTraceChunkAndCompressOnFileThread("}", true);
|
|
|
| deflateEnd(stream_.get());
|
| @@ -268,6 +282,7 @@ class CompressedStringTraceDataSink : public TracingController::TraceDataSink {
|
| bool already_tried_open_;
|
| std::string compressed_trace_data_;
|
| std::string system_trace_;
|
| + std::string metadata_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(CompressedStringTraceDataSink);
|
| };
|
|
|