Index: chrome/renderer/extensions/runtime_custom_bindings.cc |
diff --git a/chrome/renderer/extensions/runtime_custom_bindings.cc b/chrome/renderer/extensions/runtime_custom_bindings.cc |
index 587fcb738069487b719ee9ea1d3f47289938f17e..f649c73d02bb3abede7bcd8bbeff13b678a6762e 100644 |
--- a/chrome/renderer/extensions/runtime_custom_bindings.cc |
+++ b/chrome/renderer/extensions/runtime_custom_bindings.cc |
@@ -9,6 +9,7 @@ |
#include "base/values.h" |
#include "chrome/common/extensions/extension.h" |
#include "chrome/common/extensions/extension_messages.h" |
+#include "chrome/common/extensions/features/base_feature_provider.h" |
#include "chrome/common/extensions/manifest.h" |
#include "chrome/renderer/extensions/chrome_v8_context.h" |
#include "chrome/renderer/extensions/dispatcher.h" |
@@ -64,8 +65,11 @@ v8::Handle<v8::Value> RuntimeCustomBindings::OpenChannelToExtension( |
v8::Handle<v8::Value> RuntimeCustomBindings::OpenChannelToNativeApp( |
const v8::Arguments& args) { |
// Verify that the extension has permission to use native messaging. |
- if (!dispatcher()->CheckContextAccessToExtensionAPI( |
- "nativeMessaging", context())) { |
+ if (!BaseFeatureProvider::GetByName("permission")->GetFeature( |
+ "nativeMessaging")->IsAvailableToContext( |
+ GetExtensionForRenderView(), |
+ context()->context_type(), |
+ context()->GetURL()).is_available()) { |
return v8::Undefined(); |
} |