Chromium Code Reviews| Index: content/common/child_process_host_impl.cc |
| diff --git a/content/common/child_process_host_impl.cc b/content/common/child_process_host_impl.cc |
| index e9b81e75f9d894f99bc530a4fbe79bf8c9609dff..b3268b0cb2a00ea559b0c32ef6004ffa4c18bd5e 100644 |
| --- a/content/common/child_process_host_impl.cc |
| +++ b/content/common/child_process_host_impl.cc |
| @@ -7,11 +7,14 @@ |
| #include <limits> |
| #include "base/atomic_sequence_num.h" |
| +#include "base/base_switches.h" |
| #include "base/command_line.h" |
| +#include "base/feature_list.h" |
| #include "base/files/file_path.h" |
| #include "base/hash.h" |
| #include "base/logging.h" |
| #include "base/message_loop/message_loop.h" |
| +#include "base/metrics/field_trial.h" |
| #include "base/metrics/histogram.h" |
| #include "base/numerics/safe_math.h" |
| #include "base/path_service.h" |
| @@ -198,6 +201,28 @@ int ChildProcessHostImpl::GenerateChildProcessUniqueId() { |
| return id; |
| } |
| +void ChildProcessHostImpl::CopyEnableDisableFeatureFlags( |
|
Alexei Svitkine (slow)
2016/05/03 18:59:47
Nit: CopyFeatureAndFieldTrialFlags() since now thi
erikchen
2016/05/03 19:22:31
Done.
|
| + base::CommandLine* cmd_line) { |
| + std::string enabled_features; |
| + std::string disabled_features; |
| + base::FeatureList::GetInstance()->GetFeatureOverrides(&enabled_features, |
| + &disabled_features); |
| + if (!enabled_features.empty()) |
| + cmd_line->AppendSwitchASCII(switches::kEnableFeatures, enabled_features); |
| + if (!disabled_features.empty()) |
| + cmd_line->AppendSwitchASCII(switches::kDisableFeatures, disabled_features); |
| + |
| + // If we run base::FieldTrials, we want to pass to their state to the |
| + // child process so that it can act in accordance with each state, or record |
| + // histograms relating to the base::FieldTrial states. |
|
Alexei Svitkine (slow)
2016/05/03 18:59:47
Nit: I'd remove the ", or record histograms relati
erikchen
2016/05/03 19:22:31
Done.
|
| + std::string field_trial_states; |
| + base::FieldTrialList::AllStatesToString(&field_trial_states); |
| + if (!field_trial_states.empty()) { |
| + cmd_line->AppendSwitchASCII(switches::kForceFieldTrials, |
| + field_trial_states); |
| + } |
| +} |
| + |
| uint64_t ChildProcessHostImpl::ChildProcessUniqueIdToTracingProcessId( |
| int child_process_id) { |
| // In single process mode, all the children are hosted in the same process, |