| Index: content/browser/tracing/trace_controller_impl.cc
|
| diff --git a/content/browser/tracing/trace_controller_impl.cc b/content/browser/tracing/trace_controller_impl.cc
|
| index e0aed6edcd7969acd9f874f2fd7ed73f414a3f87..e416126b1c5218cce227109c198adb4b6e7e1198 100644
|
| --- a/content/browser/tracing/trace_controller_impl.cc
|
| +++ b/content/browser/tracing/trace_controller_impl.cc
|
| @@ -113,7 +113,8 @@ bool TraceControllerImpl::GetKnownCategoriesAsync(TraceSubscriber* subscriber) {
|
| // message. So to get known categories, just begin and end tracing immediately
|
| // afterwards. This will ping all the child processes for categories.
|
| is_get_categories_ = true;
|
| - bool success = BeginTracing(subscriber, "*") &&
|
| + bool success = BeginTracing(subscriber, "*",
|
| + TraceLog::GetInstance()->trace_options()) &&
|
| EndTracingAsync(subscriber);
|
| is_get_categories_ = success;
|
| return success;
|
| @@ -122,28 +123,31 @@ bool TraceControllerImpl::GetKnownCategoriesAsync(TraceSubscriber* subscriber) {
|
| bool TraceControllerImpl::BeginTracing(
|
| TraceSubscriber* subscriber,
|
| const std::vector<std::string>& included_categories,
|
| - const std::vector<std::string>& excluded_categories) {
|
| + const std::vector<std::string>& excluded_categories,
|
| + base::debug::TraceLog::Options options) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
|
|
| if (!can_begin_tracing(subscriber))
|
| return false;
|
|
|
| // Enable tracing
|
| - TraceLog::GetInstance()->SetEnabled(included_categories, excluded_categories);
|
| + TraceLog::GetInstance()->SetEnabled(included_categories, excluded_categories,
|
| + options);
|
| OnTracingBegan(subscriber);
|
|
|
| return true;
|
| }
|
|
|
| bool TraceControllerImpl::BeginTracing(TraceSubscriber* subscriber,
|
| - const std::string& categories) {
|
| + const std::string& categories,
|
| + base::debug::TraceLog::Options options) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
|
|
| if (!can_begin_tracing(subscriber))
|
| return false;
|
|
|
| // Enable tracing
|
| - TraceLog::GetInstance()->SetEnabled(categories);
|
| + TraceLog::GetInstance()->SetEnabled(categories, options);
|
|
|
| OnTracingBegan(subscriber);
|
|
|
| @@ -261,7 +265,8 @@ void TraceControllerImpl::AddFilter(TraceMessageFilter* filter) {
|
|
|
| filters_.insert(filter);
|
| if (is_tracing_enabled()) {
|
| - filter->SendBeginTracing(included_categories_, excluded_categories_);
|
| + filter->SendBeginTracing(included_categories_, excluded_categories_,
|
| + trace_options_);
|
| if (!watch_category_.empty())
|
| filter->SendSetWatchEvent(watch_category_, watch_name_);
|
| }
|
| @@ -285,9 +290,12 @@ void TraceControllerImpl::OnTracingBegan(TraceSubscriber* subscriber) {
|
|
|
| TraceLog::GetInstance()->GetEnabledTraceCategories(&included_categories_,
|
| &excluded_categories_);
|
| + trace_options_ = TraceLog::GetInstance()->trace_options();
|
| +
|
| // Notify all child processes.
|
| for (FilterMap::iterator it = filters_.begin(); it != filters_.end(); ++it) {
|
| - it->get()->SendBeginTracing(included_categories_, excluded_categories_);
|
| + it->get()->SendBeginTracing(included_categories_, excluded_categories_,
|
| + trace_options_);
|
| }
|
| }
|
|
|
|
|