Index: Source/bindings/core/v8/V8DOMConfiguration.cpp |
diff --git a/Source/bindings/core/v8/V8DOMConfiguration.cpp b/Source/bindings/core/v8/V8DOMConfiguration.cpp |
index f67dd76451ff290f6afeb94ba3f5786bc0a1a8de..2cb6bf7d7256990454e16b8790599ab8f66182f1 100644 |
--- a/Source/bindings/core/v8/V8DOMConfiguration.cpp |
+++ b/Source/bindings/core/v8/V8DOMConfiguration.cpp |
@@ -117,6 +117,16 @@ v8::Handle<v8::FunctionTemplate> V8DOMConfiguration::functionTemplateForMethod(v |
return functionTemplate; |
} |
+v8::Handle<v8::FunctionTemplate> V8DOMConfiguration::functionTemplateForMethod(v8::Handle<v8::Signature> signature, const SymbolKeyedMethodConfiguration& callback, v8::Isolate* isolate) |
+{ |
+ v8::FunctionCallback functionCallback = callback.callback; |
+ if (DOMWrapperWorld::current(isolate).isMainWorld() && callback.callbackForMainWorld) |
+ functionCallback = callback.callbackForMainWorld; |
+ v8::Local<v8::FunctionTemplate> functionTemplate = v8::FunctionTemplate::New(isolate, functionCallback, v8Undefined(), signature, callback.length); |
+ functionTemplate->RemovePrototype(); |
+ return functionTemplate; |
+} |
+ |
v8::Local<v8::Signature> V8DOMConfiguration::installDOMClassTemplate(v8::Handle<v8::FunctionTemplate> functionDescriptor, const char* interfaceName, v8::Handle<v8::FunctionTemplate> parentClass, size_t fieldCount, |
const AttributeConfiguration* attributes, size_t attributeCount, |
const AccessorConfiguration* accessors, size_t accessorCount, |