| Index: chrome/renderer/extensions/extension_custom_bindings.cc
|
| diff --git a/chrome/renderer/extensions/extension_custom_bindings.cc b/chrome/renderer/extensions/extension_custom_bindings.cc
|
| index afb45e0678aff906de8b5c91fecacbb139512547..7f77e03475bebc1ac282d366ba23f79341c09ed0 100644
|
| --- a/chrome/renderer/extensions/extension_custom_bindings.cc
|
| +++ b/chrome/renderer/extensions/extension_custom_bindings.cc
|
| @@ -110,11 +110,12 @@ class ExtensionViewAccumulator : public content::RenderViewVisitor {
|
| ExtensionCustomBindings::ExtensionCustomBindings(
|
| ExtensionDispatcher* extension_dispatcher)
|
| : ChromeV8Extension(extension_dispatcher) {
|
| - RouteStaticFunction("GetExtensionViews", &GetExtensionViews);
|
| + RouteFunction("GetExtensionViews",
|
| + base::Bind(&ExtensionCustomBindings::GetExtensionViews,
|
| + base::Unretained(this)));
|
| RouteStaticFunction("OpenChannelToExtension", &OpenChannelToExtension);
|
| }
|
|
|
| -// static
|
| v8::Handle<v8::Value> ExtensionCustomBindings::GetExtensionViews(
|
| const v8::Arguments& args) {
|
| if (args.Length() != 2)
|
| @@ -152,10 +153,10 @@ v8::Handle<v8::Value> ExtensionCustomBindings::GetExtensionViews(
|
| return v8::Undefined();
|
| }
|
|
|
| - ExtensionCustomBindings* v8_extension =
|
| - GetFromArguments<ExtensionCustomBindings>(args);
|
| - const ::Extension* extension =
|
| - v8_extension->GetExtensionForCurrentRenderView();
|
| + ChromeV8Context* context =
|
| + extension_dispatcher()->v8_context_set().GetCurrent();
|
| + const Extension* extension =
|
| + extension_dispatcher()->extensions()->GetByID(context->extension_id());
|
| if (!extension)
|
| return v8::Undefined();
|
|
|
|
|