| Index: chrome/browser/extensions/api/instance_id/instance_id_api.cc
|
| diff --git a/chrome/browser/extensions/api/instance_id/instance_id_api.cc b/chrome/browser/extensions/api/instance_id/instance_id_api.cc
|
| index f7cdbe2c27031057d18d5e7b8f8f40b2b936696b..1c18eb5073cd71657af26234c497ef6b9fa360b5 100644
|
| --- a/chrome/browser/extensions/api/instance_id/instance_id_api.cc
|
| +++ b/chrome/browser/extensions/api/instance_id/instance_id_api.cc
|
| @@ -5,6 +5,7 @@
|
| #include "chrome/browser/extensions/api/instance_id/instance_id_api.h"
|
|
|
| #include "base/logging.h"
|
| +#include "base/metrics/field_trial.h"
|
| #include "base/metrics/histogram_macros.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/services/gcm/instance_id/instance_id_profile_service.h"
|
| @@ -17,6 +18,9 @@ namespace extensions {
|
|
|
| namespace {
|
|
|
| +const char kInstanceIDFieldTrialName[] = "InstanceID";
|
| +const char kInstanceIDFieldTrialEnabledGroupName[] = "Enabled";
|
| +
|
| // Error messages.
|
| const char kInvalidParameter[] = "Function was called with invalid parameters.";
|
| const char kDisabled[] = "Instance ID is currently disabled.";
|
| @@ -74,7 +78,12 @@ ExtensionFunction::ResponseAction InstanceIDApiFunction::Run() {
|
| bool InstanceIDApiFunction::IsEnabled() const {
|
| Profile* profile = Profile::FromBrowserContext(browser_context());
|
|
|
| - return instance_id::InstanceIDProfileService::IsInstanceIDEnabled(profile);
|
| + if (!instance_id::InstanceIDProfileService::IsInstanceIDEnabled(profile))
|
| + return false;
|
| +
|
| + std::string group_name =
|
| + base::FieldTrialList::FindFullName(kInstanceIDFieldTrialName);
|
| + return group_name == kInstanceIDFieldTrialEnabledGroupName;
|
| }
|
|
|
| instance_id::InstanceID* InstanceIDApiFunction::GetInstanceID() const {
|
|
|