Index: extensions/common/features/simple_feature.cc |
diff --git a/extensions/common/features/simple_feature.cc b/extensions/common/features/simple_feature.cc |
index d901cd9a70cb765eb6e0abd76ff46fab218bc7c5..0f7675b19f15c504bd5caa3c6409e6bc48fea78d 100644 |
--- a/extensions/common/features/simple_feature.cc |
+++ b/extensions/common/features/simple_feature.cc |
@@ -53,6 +53,11 @@ Feature::Availability IsAvailableToContextForBind(const Extension* extension, |
return feature->IsAvailableToContext(extension, context, url, platform); |
} |
+Feature::Availability IsAvailableToChannelForBind(version_info::Channel channel, |
+ const Feature* feature) { |
+ return feature->IsAvailableToChannel(channel); |
+} |
+ |
// Gets a human-readable name for the given extension type, suitable for giving |
// to developers in an error message. |
std::string GetDisplayName(Manifest::Type type) { |
@@ -455,6 +460,13 @@ bool SimpleFeature::IsIdInWhitelist(const std::string& extension_id) const { |
return IsIdInList(extension_id, whitelist_); |
} |
+Feature::Availability SimpleFeature::IsAvailableToChannel( |
+ version_info::Channel channel) const { |
+ if (channel_ && *channel_ < channel) |
+ return CreateAvailability(UNSUPPORTED_CHANNEL, *channel_); |
+ return CheckDependencies(base::Bind(&IsAvailableToChannelForBind, channel)); |
+} |
+ |
// static |
bool SimpleFeature::IsIdInArray(const std::string& extension_id, |
const char* const array[], |