Index: chrome/browser/extensions/extension_uninstall_dialog.cc |
diff --git a/chrome/browser/extensions/extension_uninstall_dialog.cc b/chrome/browser/extensions/extension_uninstall_dialog.cc |
index c65bf78f65cdbfa981c02d34f54785be5be2fd29..3bdb476e1f31af5ad3319f477122c5a807180962 100644 |
--- a/chrome/browser/extensions/extension_uninstall_dialog.cc |
+++ b/chrome/browser/extensions/extension_uninstall_dialog.cc |
@@ -132,17 +132,23 @@ bool ExtensionUninstallDialog::ShouldShowReportAbuseCheckbox() const { |
static const char kExperimentName[] = "ExtensionUninstall.ReportAbuse"; |
static const char kDefaultGroupName[] = "Default"; |
static const char kShowCheckboxGroup[] = "ShowCheckbox"; |
- // TODO(devlin): Turn on this field trial. See crbug.com/441377. |
- scoped_refptr<base::FieldTrial> trial( |
- base::FieldTrialList::FactoryGetFieldTrial( |
- kExperimentName, |
- 100, // Total probability. |
- kDefaultGroupName, |
- 2015, 7, 31, // End date. |
- base::FieldTrial::ONE_TIME_RANDOMIZED, |
- nullptr)); |
- int experiment_group = trial->AppendGroup(kShowCheckboxGroup, 0); |
- return base::FieldTrialList::FindValue(kExperimentName) == experiment_group; |
+ |
+ // Important: Only initialize the trial once. |
+ if (!base::FieldTrialList::Find(kExperimentName)) { |
+ // TODO(devlin): Turn on this field trial. See crbug.com/441377. |
Alexei Svitkine (slow)
2015/03/31 20:50:53
The client-side API to create a field trial, like
|
+ scoped_refptr<base::FieldTrial> trial( |
+ base::FieldTrialList::FactoryGetFieldTrial( |
+ kExperimentName, |
+ 100, // Total probability. |
+ kDefaultGroupName, |
+ 2015, 7, 31, // End date. |
+ base::FieldTrial::ONE_TIME_RANDOMIZED, |
+ nullptr)); |
+ trial->AppendGroup(kShowCheckboxGroup, 0); |
+ } |
+ |
+ return base::FieldTrialList::FindFullName(kExperimentName) == |
+ kShowCheckboxGroup; |
} |
void ExtensionUninstallDialog::HandleReportAbuse() { |