Changeset 145554 in webkit
- Timestamp:
- Mar 12, 2013 9:44:18 AM (11 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 37 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r145552 r145554 1 2013-03-12 Marja Hölttä <marja@chromium.org> 2 3 [V8] Store main world and non-main world templates separately. 4 https://bugs.webkit.org/show_bug.cgi?id=111724 5 6 Reviewed by Jochen Eisinger. 7 8 This is needed for generating specialized bindings for the main 9 world (bug 110874). 10 11 No new tests (updated existing bindings tests). 12 13 * bindings/scripts/CodeGeneratorV8.pm: 14 (GenerateHeader): 15 (GenerateDomainSafeFunctionGetter): 16 (GenerateImplementation): 17 (CreateCustomSignature): 18 * bindings/scripts/test/V8/V8Float64Array.cpp: 19 (WebCore::ConfigureV8Float64ArrayTemplate): 20 (WebCore::V8Float64Array::GetTemplate): 21 (WebCore::V8Float64Array::HasInstance): 22 * bindings/scripts/test/V8/V8Float64Array.h: 23 (V8Float64Array): 24 * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp: 25 (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter): 26 (WebCore::ConfigureV8TestActiveDOMObjectTemplate): 27 (WebCore::V8TestActiveDOMObject::GetTemplate): 28 (WebCore::V8TestActiveDOMObject::HasInstance): 29 * bindings/scripts/test/V8/V8TestActiveDOMObject.h: 30 (V8TestActiveDOMObject): 31 * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp: 32 (WebCore::V8TestCustomNamedGetter::GetTemplate): 33 (WebCore::V8TestCustomNamedGetter::HasInstance): 34 * bindings/scripts/test/V8/V8TestCustomNamedGetter.h: 35 (V8TestCustomNamedGetter): 36 * bindings/scripts/test/V8/V8TestEventConstructor.cpp: 37 (WebCore::V8TestEventConstructor::GetTemplate): 38 (WebCore::V8TestEventConstructor::HasInstance): 39 * bindings/scripts/test/V8/V8TestEventConstructor.h: 40 (V8TestEventConstructor): 41 * bindings/scripts/test/V8/V8TestEventTarget.cpp: 42 (WebCore::ConfigureV8TestEventTargetTemplate): 43 (WebCore::V8TestEventTarget::GetTemplate): 44 (WebCore::V8TestEventTarget::HasInstance): 45 * bindings/scripts/test/V8/V8TestEventTarget.h: 46 (V8TestEventTarget): 47 * bindings/scripts/test/V8/V8TestException.cpp: 48 (WebCore::V8TestException::GetTemplate): 49 (WebCore::V8TestException::HasInstance): 50 * bindings/scripts/test/V8/V8TestException.h: 51 (V8TestException): 52 * bindings/scripts/test/V8/V8TestInterface.cpp: 53 (WebCore::ConfigureV8TestInterfaceTemplate): 54 (WebCore::V8TestInterface::GetTemplate): 55 (WebCore::V8TestInterface::HasInstance): 56 * bindings/scripts/test/V8/V8TestInterface.h: 57 (V8TestInterface): 58 * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: 59 (WebCore::V8TestMediaQueryListListener::GetTemplate): 60 (WebCore::V8TestMediaQueryListListener::HasInstance): 61 * bindings/scripts/test/V8/V8TestMediaQueryListListener.h: 62 (V8TestMediaQueryListListener): 63 * bindings/scripts/test/V8/V8TestNamedConstructor.cpp: 64 (WebCore::V8TestNamedConstructor::GetTemplate): 65 (WebCore::V8TestNamedConstructor::HasInstance): 66 * bindings/scripts/test/V8/V8TestNamedConstructor.h: 67 (V8TestNamedConstructor): 68 * bindings/scripts/test/V8/V8TestNode.cpp: 69 (WebCore::V8TestNode::GetTemplate): 70 (WebCore::V8TestNode::HasInstance): 71 * bindings/scripts/test/V8/V8TestNode.h: 72 (V8TestNode): 73 * bindings/scripts/test/V8/V8TestObj.cpp: 74 (WebCore::ConfigureV8TestObjTemplate): 75 (WebCore::V8TestObj::GetTemplate): 76 (WebCore::V8TestObj::HasInstance): 77 * bindings/scripts/test/V8/V8TestObj.h: 78 (V8TestObj): 79 * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp: 80 (WebCore::V8TestOverloadedConstructors::GetTemplate): 81 (WebCore::V8TestOverloadedConstructors::HasInstance): 82 * bindings/scripts/test/V8/V8TestOverloadedConstructors.h: 83 (V8TestOverloadedConstructors): 84 * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: 85 (WebCore::V8TestSerializedScriptValueInterface::GetTemplate): 86 (WebCore::V8TestSerializedScriptValueInterface::HasInstance): 87 * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: 88 (V8TestSerializedScriptValueInterface): 89 * bindings/scripts/test/V8/V8TestTypedefs.cpp: 90 (WebCore::ConfigureV8TestTypedefsTemplate): 91 (WebCore::V8TestTypedefs::GetTemplate): 92 (WebCore::V8TestTypedefs::HasInstance): 93 * bindings/scripts/test/V8/V8TestTypedefs.h: 94 (V8TestTypedefs): 95 * bindings/v8/V8AdaptorFunction.cpp: 96 (WebCore::V8AdaptorFunction::getTemplate): 97 * bindings/v8/V8GCController.cpp: 98 * bindings/v8/V8PerIsolateData.cpp: 99 (WebCore::V8PerIsolateData::reportMemoryUsage): 100 (WebCore::V8PerIsolateData::privateTemplate): 101 (WebCore::V8PerIsolateData::rawTemplate): 102 (WebCore::V8PerIsolateData::hasInstance): 103 * bindings/v8/V8PerIsolateData.h: 104 (WebCore::V8PerIsolateData::rawTemplateMap): 105 (V8PerIsolateData): 106 (WebCore::V8PerIsolateData::templateMap): 107 * bindings/v8/WrapperTypeInfo.h: 108 * bindings/v8/custom/V8LocationCustom.cpp: 109 (WebCore::V8Location::reloadAttrGetterCustom): 110 (WebCore::V8Location::replaceAttrGetterCustom): 111 (WebCore::V8Location::assignAttrGetterCustom): 112 1 113 2013-03-12 Zan Dobersek <zdobersek@igalia.com> 2 114 -
trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm
r145538 r145554 361 361 362 362 push(@headerContent, <<END); 363 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );363 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 364 364 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 365 365 static ${nativeType}* toNative(v8::Handle<v8::Object> object) … … 781 781 my $funcName = $function->signature->name; 782 782 783 my $signature = "v8::Signature::New(V8PerIsolateData::from(info.GetIsolate())->rawTemplate(&" . $v8InterfaceName . "::info ))";783 my $signature = "v8::Signature::New(V8PerIsolateData::from(info.GetIsolate())->rawTemplate(&" . $v8InterfaceName . "::info, currentWorldType))"; 784 784 if ($function->signature->extendedAttributes->{"V8DoNotCheckSignature"}) { 785 785 $signature = "v8::Local<v8::Signature>()"; … … 3156 3156 { 3157 3157 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 3158 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);3159 if (result != data->templateMap( ).end())3158 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 3159 if (result != data->templateMap(worldType).end()) 3160 3160 return result->value; 3161 3161 3162 3162 v8::HandleScope handleScope; 3163 3163 v8::Persistent<v8::FunctionTemplate> templ = 3164 Configure${v8InterfaceName}Template(data->rawTemplate(&info ), isolate, worldType);3165 data->templateMap( ).add(&info, templ);3164 Configure${v8InterfaceName}Template(data->rawTemplate(&info, worldType), isolate, worldType); 3165 data->templateMap(worldType).add(&info, templ); 3166 3166 return templ; 3167 3167 } 3168 3168 3169 bool ${v8InterfaceName}::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )3170 { 3171 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );3169 bool ${v8InterfaceName}::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 3170 { 3171 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 3172 3172 } 3173 3173 … … 4090 4090 AddToImplIncludes(GetV8HeaderName($type)); 4091 4091 } 4092 $result .= "V8PerIsolateData::from(isolate)->rawTemplate(&V8${type}::info )";4092 $result .= "V8PerIsolateData::from(isolate)->rawTemplate(&V8${type}::info, worldType)"; 4093 4093 } 4094 4094 } else { -
trunk/Source/WebCore/bindings/scripts/test/V8/V8Float64Array.cpp
r145538 r145554 154 154 // Custom Signature 'foo' 155 155 const int fooArgc = 1; 156 v8::Handle<v8::FunctionTemplate> fooArgv[fooArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Float32Array::info ) };156 v8::Handle<v8::FunctionTemplate> fooArgv[fooArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Float32Array::info, worldType) }; 157 157 v8::Handle<v8::Signature> fooSignature = v8::Signature::New(desc, fooArgc, fooArgv); 158 158 proto->Set(v8::String::NewSymbol("foo"), v8::FunctionTemplate::New(Float64ArrayV8Internal::fooMethodCallback, v8Undefined(), fooSignature)); … … 166 166 { 167 167 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 168 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);169 if (result != data->templateMap( ).end())168 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 169 if (result != data->templateMap(worldType).end()) 170 170 return result->value; 171 171 172 172 v8::HandleScope handleScope; 173 173 v8::Persistent<v8::FunctionTemplate> templ = 174 ConfigureV8Float64ArrayTemplate(data->rawTemplate(&info ), isolate, worldType);175 data->templateMap( ).add(&info, templ);174 ConfigureV8Float64ArrayTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 175 data->templateMap(worldType).add(&info, templ); 176 176 return templ; 177 177 } 178 178 179 bool V8Float64Array::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )180 { 181 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );179 bool V8Float64Array::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 180 { 181 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 182 182 } 183 183 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8Float64Array.h
r145538 r145554 36 36 public: 37 37 static const bool hasDependentLifetime = V8ArrayBufferView::hasDependentLifetime; 38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 39 39 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 40 40 static Float64Array* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestActiveDOMObject.cpp
r145538 r145554 133 133 WrapperWorldType currentWorldType = worldType(info.GetIsolate()); 134 134 V8PerIsolateData* data = V8PerIsolateData::from(info.GetIsolate()); 135 v8::Persistent<v8::FunctionTemplate> privateTemplate = data->privateTemplate(currentWorldType, &privateTemplateUniqueKey, TestActiveDOMObjectV8Internal::postMessageMethodCallback, v8Undefined(), v8::Signature::New(V8PerIsolateData::from(info.GetIsolate())->rawTemplate(&V8TestActiveDOMObject::info )));135 v8::Persistent<v8::FunctionTemplate> privateTemplate = data->privateTemplate(currentWorldType, &privateTemplateUniqueKey, TestActiveDOMObjectV8Internal::postMessageMethodCallback, v8Undefined(), v8::Signature::New(V8PerIsolateData::from(info.GetIsolate())->rawTemplate(&V8TestActiveDOMObject::info, currentWorldType))); 136 136 137 137 v8::Handle<v8::Object> holder = info.This()->FindInstanceInPrototypeChain(V8TestActiveDOMObject::GetTemplate(info.GetIsolate(), currentWorldType)); … … 144 144 if (!BindingSecurity::shouldAllowAccessToFrame(BindingState::instance(), imp->frame(), DoNotReportSecurityError)) { 145 145 static const char* sharedTemplateUniqueKey = "postMessageSharedTemplate"; 146 v8::Persistent<v8::FunctionTemplate> sharedTemplate = data->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, TestActiveDOMObjectV8Internal::postMessageMethodCallback, v8Undefined(), v8::Signature::New(V8PerIsolateData::from(info.GetIsolate())->rawTemplate(&V8TestActiveDOMObject::info )));146 v8::Persistent<v8::FunctionTemplate> sharedTemplate = data->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, TestActiveDOMObjectV8Internal::postMessageMethodCallback, v8Undefined(), v8::Signature::New(V8PerIsolateData::from(info.GetIsolate())->rawTemplate(&V8TestActiveDOMObject::info, currentWorldType))); 147 147 return sharedTemplate->GetFunction(); 148 148 } … … 196 196 // Custom Signature 'excitingFunction' 197 197 const int excitingFunctionArgc = 1; 198 v8::Handle<v8::FunctionTemplate> excitingFunctionArgv[excitingFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Node::info ) };198 v8::Handle<v8::FunctionTemplate> excitingFunctionArgv[excitingFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Node::info, worldType) }; 199 199 v8::Handle<v8::Signature> excitingFunctionSignature = v8::Signature::New(desc, excitingFunctionArgc, excitingFunctionArgv); 200 200 proto->Set(v8::String::NewSymbol("excitingFunction"), v8::FunctionTemplate::New(TestActiveDOMObjectV8Internal::excitingFunctionMethodCallback, v8Undefined(), excitingFunctionSignature)); … … 211 211 { 212 212 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 213 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);214 if (result != data->templateMap( ).end())213 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 214 if (result != data->templateMap(worldType).end()) 215 215 return result->value; 216 216 217 217 v8::HandleScope handleScope; 218 218 v8::Persistent<v8::FunctionTemplate> templ = 219 ConfigureV8TestActiveDOMObjectTemplate(data->rawTemplate(&info ), isolate, worldType);220 data->templateMap( ).add(&info, templ);219 ConfigureV8TestActiveDOMObjectTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 220 data->templateMap(worldType).add(&info, templ); 221 221 return templ; 222 222 } 223 223 224 bool V8TestActiveDOMObject::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )225 { 226 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );224 bool V8TestActiveDOMObject::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 225 { 226 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 227 227 } 228 228 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestActiveDOMObject.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestActiveDOMObject* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp
r145538 r145554 116 116 { 117 117 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 118 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);119 if (result != data->templateMap( ).end())118 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 119 if (result != data->templateMap(worldType).end()) 120 120 return result->value; 121 121 122 122 v8::HandleScope handleScope; 123 123 v8::Persistent<v8::FunctionTemplate> templ = 124 ConfigureV8TestCustomNamedGetterTemplate(data->rawTemplate(&info ), isolate, worldType);125 data->templateMap( ).add(&info, templ);124 ConfigureV8TestCustomNamedGetterTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 125 data->templateMap(worldType).add(&info, templ); 126 126 return templ; 127 127 } 128 128 129 bool V8TestCustomNamedGetter::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )129 bool V8TestCustomNamedGetter::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 130 130 { 131 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );131 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 132 132 } 133 133 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestCustomNamedGetter.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestCustomNamedGetter* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestEventConstructor.cpp
r145538 r145554 158 158 { 159 159 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 160 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);161 if (result != data->templateMap( ).end())160 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 161 if (result != data->templateMap(worldType).end()) 162 162 return result->value; 163 163 164 164 v8::HandleScope handleScope; 165 165 v8::Persistent<v8::FunctionTemplate> templ = 166 ConfigureV8TestEventConstructorTemplate(data->rawTemplate(&info ), isolate, worldType);167 data->templateMap( ).add(&info, templ);166 ConfigureV8TestEventConstructorTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 167 data->templateMap(worldType).add(&info, templ); 168 168 return templ; 169 169 } 170 170 171 bool V8TestEventConstructor::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )171 bool V8TestEventConstructor::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 172 172 { 173 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );173 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 174 174 } 175 175 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestEventConstructor.h
r145538 r145554 36 36 public: 37 37 static const bool hasDependentLifetime = false; 38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 39 39 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 40 40 static TestEventConstructor* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestEventTarget.cpp
r145538 r145554 180 180 // Custom Signature 'dispatchEvent' 181 181 const int dispatchEventArgc = 1; 182 v8::Handle<v8::FunctionTemplate> dispatchEventArgv[dispatchEventArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Event::info ) };182 v8::Handle<v8::FunctionTemplate> dispatchEventArgv[dispatchEventArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Event::info, worldType) }; 183 183 v8::Handle<v8::Signature> dispatchEventSignature = v8::Signature::New(desc, dispatchEventArgc, dispatchEventArgv); 184 184 proto->Set(v8::String::NewSymbol("dispatchEvent"), v8::FunctionTemplate::New(TestEventTargetV8Internal::dispatchEventMethodCallback, v8Undefined(), dispatchEventSignature)); … … 192 192 { 193 193 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 194 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);195 if (result != data->templateMap( ).end())194 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 195 if (result != data->templateMap(worldType).end()) 196 196 return result->value; 197 197 198 198 v8::HandleScope handleScope; 199 199 v8::Persistent<v8::FunctionTemplate> templ = 200 ConfigureV8TestEventTargetTemplate(data->rawTemplate(&info ), isolate, worldType);201 data->templateMap( ).add(&info, templ);200 ConfigureV8TestEventTargetTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 201 data->templateMap(worldType).add(&info, templ); 202 202 return templ; 203 203 } 204 204 205 bool V8TestEventTarget::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )206 { 207 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );205 bool V8TestEventTarget::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 206 { 207 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 208 208 } 209 209 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestEventTarget.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestEventTarget* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestException.cpp
r145538 r145554 107 107 { 108 108 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 109 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);110 if (result != data->templateMap( ).end())109 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 110 if (result != data->templateMap(worldType).end()) 111 111 return result->value; 112 112 113 113 v8::HandleScope handleScope; 114 114 v8::Persistent<v8::FunctionTemplate> templ = 115 ConfigureV8TestExceptionTemplate(data->rawTemplate(&info ), isolate, worldType);116 data->templateMap( ).add(&info, templ);115 ConfigureV8TestExceptionTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 116 data->templateMap(worldType).add(&info, templ); 117 117 return templ; 118 118 } 119 119 120 bool V8TestException::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )120 bool V8TestException::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 121 121 { 122 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );122 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 123 123 } 124 124 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestException.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestException* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp
r145538 r145554 439 439 // Custom Signature 'supplementalMethod2' 440 440 const int supplementalMethod2Argc = 2; 441 v8::Handle<v8::FunctionTemplate> supplementalMethod2Argv[supplementalMethod2Argc] = { v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info ) };441 v8::Handle<v8::FunctionTemplate> supplementalMethod2Argv[supplementalMethod2Argc] = { v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info, worldType) }; 442 442 v8::Handle<v8::Signature> supplementalMethod2Signature = v8::Signature::New(desc, supplementalMethod2Argc, supplementalMethod2Argv); 443 443 #if ENABLE(Condition11) || ENABLE(Condition12) … … 457 457 { 458 458 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 459 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);460 if (result != data->templateMap( ).end())459 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 460 if (result != data->templateMap(worldType).end()) 461 461 return result->value; 462 462 463 463 v8::HandleScope handleScope; 464 464 v8::Persistent<v8::FunctionTemplate> templ = 465 ConfigureV8TestInterfaceTemplate(data->rawTemplate(&info ), isolate, worldType);466 data->templateMap( ).add(&info, templ);465 ConfigureV8TestInterfaceTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 466 data->templateMap(worldType).add(&info, templ); 467 467 return templ; 468 468 } 469 469 470 bool V8TestInterface::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )471 { 472 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );470 bool V8TestInterface::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 471 { 472 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 473 473 } 474 474 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestInterface.h
r145538 r145554 36 36 public: 37 37 static const bool hasDependentLifetime = true; 38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 39 39 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 40 40 static TestInterface* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp
r145538 r145554 116 116 { 117 117 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 118 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);119 if (result != data->templateMap( ).end())118 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 119 if (result != data->templateMap(worldType).end()) 120 120 return result->value; 121 121 122 122 v8::HandleScope handleScope; 123 123 v8::Persistent<v8::FunctionTemplate> templ = 124 ConfigureV8TestMediaQueryListListenerTemplate(data->rawTemplate(&info ), isolate, worldType);125 data->templateMap( ).add(&info, templ);124 ConfigureV8TestMediaQueryListListenerTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 125 data->templateMap(worldType).add(&info, templ); 126 126 return templ; 127 127 } 128 128 129 bool V8TestMediaQueryListListener::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )129 bool V8TestMediaQueryListListener::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 130 130 { 131 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );131 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 132 132 } 133 133 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestMediaQueryListListener.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestMediaQueryListListener* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestNamedConstructor.cpp
r145538 r145554 147 147 { 148 148 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 149 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);150 if (result != data->templateMap( ).end())149 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 150 if (result != data->templateMap(worldType).end()) 151 151 return result->value; 152 152 153 153 v8::HandleScope handleScope; 154 154 v8::Persistent<v8::FunctionTemplate> templ = 155 ConfigureV8TestNamedConstructorTemplate(data->rawTemplate(&info ), isolate, worldType);156 data->templateMap( ).add(&info, templ);155 ConfigureV8TestNamedConstructorTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 156 data->templateMap(worldType).add(&info, templ); 157 157 return templ; 158 158 } 159 159 160 bool V8TestNamedConstructor::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )160 bool V8TestNamedConstructor::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 161 161 { 162 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );162 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 163 163 } 164 164 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestNamedConstructor.h
r145538 r145554 41 41 public: 42 42 static const bool hasDependentLifetime = true; 43 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );43 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 44 44 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 45 45 static TestNamedConstructor* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestNode.cpp
r145538 r145554 114 114 { 115 115 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 116 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);117 if (result != data->templateMap( ).end())116 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 117 if (result != data->templateMap(worldType).end()) 118 118 return result->value; 119 119 120 120 v8::HandleScope handleScope; 121 121 v8::Persistent<v8::FunctionTemplate> templ = 122 ConfigureV8TestNodeTemplate(data->rawTemplate(&info ), isolate, worldType);123 data->templateMap( ).add(&info, templ);122 ConfigureV8TestNodeTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 123 data->templateMap(worldType).add(&info, templ); 124 124 return templ; 125 125 } 126 126 127 bool V8TestNode::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )127 bool V8TestNode::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 128 128 { 129 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );129 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 130 130 } 131 131 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestNode.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = true; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestNode* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp
r145538 r145554 3063 3063 // Custom Signature 'voidMethodWithArgs' 3064 3064 const int voidMethodWithArgsArgc = 3; 3065 v8::Handle<v8::FunctionTemplate> voidMethodWithArgsArgv[voidMethodWithArgsArgc] = { v8::Handle<v8::FunctionTemplate>(), v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info ) };3065 v8::Handle<v8::FunctionTemplate> voidMethodWithArgsArgv[voidMethodWithArgsArgc] = { v8::Handle<v8::FunctionTemplate>(), v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info, worldType) }; 3066 3066 v8::Handle<v8::Signature> voidMethodWithArgsSignature = v8::Signature::New(desc, voidMethodWithArgsArgc, voidMethodWithArgsArgv); 3067 3067 proto->Set(v8::String::NewSymbol("voidMethodWithArgs"), v8::FunctionTemplate::New(TestObjV8Internal::voidMethodWithArgsMethodCallback, v8Undefined(), voidMethodWithArgsSignature)); … … 3069 3069 // Custom Signature 'longMethodWithArgs' 3070 3070 const int longMethodWithArgsArgc = 3; 3071 v8::Handle<v8::FunctionTemplate> longMethodWithArgsArgv[longMethodWithArgsArgc] = { v8::Handle<v8::FunctionTemplate>(), v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info ) };3071 v8::Handle<v8::FunctionTemplate> longMethodWithArgsArgv[longMethodWithArgsArgc] = { v8::Handle<v8::FunctionTemplate>(), v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info, worldType) }; 3072 3072 v8::Handle<v8::Signature> longMethodWithArgsSignature = v8::Signature::New(desc, longMethodWithArgsArgc, longMethodWithArgsArgv); 3073 3073 proto->Set(v8::String::NewSymbol("longMethodWithArgs"), v8::FunctionTemplate::New(TestObjV8Internal::longMethodWithArgsMethodCallback, v8Undefined(), longMethodWithArgsSignature)); … … 3075 3075 // Custom Signature 'objMethodWithArgs' 3076 3076 const int objMethodWithArgsArgc = 3; 3077 v8::Handle<v8::FunctionTemplate> objMethodWithArgsArgv[objMethodWithArgsArgc] = { v8::Handle<v8::FunctionTemplate>(), v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info ) };3077 v8::Handle<v8::FunctionTemplate> objMethodWithArgsArgv[objMethodWithArgsArgc] = { v8::Handle<v8::FunctionTemplate>(), v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info, worldType) }; 3078 3078 v8::Handle<v8::Signature> objMethodWithArgsSignature = v8::Signature::New(desc, objMethodWithArgsArgc, objMethodWithArgsArgv); 3079 3079 proto->Set(v8::String::NewSymbol("objMethodWithArgs"), v8::FunctionTemplate::New(TestObjV8Internal::objMethodWithArgsMethodCallback, v8Undefined(), objMethodWithArgsSignature)); … … 3081 3081 // Custom Signature 'methodWithSequenceArg' 3082 3082 const int methodWithSequenceArgArgc = 1; 3083 v8::Handle<v8::FunctionTemplate> methodWithSequenceArgArgv[methodWithSequenceArgArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8sequence<ScriptProfile>::info ) };3083 v8::Handle<v8::FunctionTemplate> methodWithSequenceArgArgv[methodWithSequenceArgArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8sequence<ScriptProfile>::info, worldType) }; 3084 3084 v8::Handle<v8::Signature> methodWithSequenceArgSignature = v8::Signature::New(desc, methodWithSequenceArgArgc, methodWithSequenceArgArgv); 3085 3085 proto->Set(v8::String::NewSymbol("methodWithSequenceArg"), v8::FunctionTemplate::New(TestObjV8Internal::methodWithSequenceArgMethodCallback, v8Undefined(), methodWithSequenceArgSignature)); … … 3087 3087 // Custom Signature 'methodThatRequiresAllArgsAndThrows' 3088 3088 const int methodThatRequiresAllArgsAndThrowsArgc = 2; 3089 v8::Handle<v8::FunctionTemplate> methodThatRequiresAllArgsAndThrowsArgv[methodThatRequiresAllArgsAndThrowsArgc] = { v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info ) };3089 v8::Handle<v8::FunctionTemplate> methodThatRequiresAllArgsAndThrowsArgv[methodThatRequiresAllArgsAndThrowsArgc] = { v8::Handle<v8::FunctionTemplate>(), V8PerIsolateData::from(isolate)->rawTemplate(&V8TestObj::info, worldType) }; 3090 3090 v8::Handle<v8::Signature> methodThatRequiresAllArgsAndThrowsSignature = v8::Signature::New(desc, methodThatRequiresAllArgsAndThrowsArgc, methodThatRequiresAllArgsAndThrowsArgv); 3091 3091 proto->Set(v8::String::NewSymbol("methodThatRequiresAllArgsAndThrows"), v8::FunctionTemplate::New(TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethodCallback, v8Undefined(), methodThatRequiresAllArgsAndThrowsSignature)); … … 3105 3105 // Custom Signature 'stringArrayFunction' 3106 3106 const int stringArrayFunctionArgc = 1; 3107 v8::Handle<v8::FunctionTemplate> stringArrayFunctionArgv[stringArrayFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info ) };3107 v8::Handle<v8::FunctionTemplate> stringArrayFunctionArgv[stringArrayFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info, worldType) }; 3108 3108 v8::Handle<v8::Signature> stringArrayFunctionSignature = v8::Signature::New(desc, stringArrayFunctionArgc, stringArrayFunctionArgv); 3109 3109 proto->Set(v8::String::NewSymbol("stringArrayFunction"), v8::FunctionTemplate::New(TestObjV8Internal::stringArrayFunctionMethodCallback, v8Undefined(), stringArrayFunctionSignature)); … … 3111 3111 // Custom Signature 'domStringListFunction' 3112 3112 const int domStringListFunctionArgc = 1; 3113 v8::Handle<v8::FunctionTemplate> domStringListFunctionArgv[domStringListFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMStringList::info ) };3113 v8::Handle<v8::FunctionTemplate> domStringListFunctionArgv[domStringListFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMStringList::info, worldType) }; 3114 3114 v8::Handle<v8::Signature> domStringListFunctionSignature = v8::Signature::New(desc, domStringListFunctionArgc, domStringListFunctionArgv); 3115 3115 proto->Set(v8::String::NewSymbol("domStringListFunction"), v8::FunctionTemplate::New(TestObjV8Internal::domStringListFunctionMethodCallback, v8Undefined(), domStringListFunctionSignature)); … … 3117 3117 // Custom Signature 'convert1' 3118 3118 const int convert1Argc = 1; 3119 v8::Handle<v8::FunctionTemplate> convert1Argv[convert1Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8a::info ) };3119 v8::Handle<v8::FunctionTemplate> convert1Argv[convert1Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8a::info, worldType) }; 3120 3120 v8::Handle<v8::Signature> convert1Signature = v8::Signature::New(desc, convert1Argc, convert1Argv); 3121 3121 proto->Set(v8::String::NewSymbol("convert1"), v8::FunctionTemplate::New(TestObjV8Internal::convert1MethodCallback, v8Undefined(), convert1Signature)); … … 3123 3123 // Custom Signature 'convert2' 3124 3124 const int convert2Argc = 1; 3125 v8::Handle<v8::FunctionTemplate> convert2Argv[convert2Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8b::info ) };3125 v8::Handle<v8::FunctionTemplate> convert2Argv[convert2Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8b::info, worldType) }; 3126 3126 v8::Handle<v8::Signature> convert2Signature = v8::Signature::New(desc, convert2Argc, convert2Argv); 3127 3127 proto->Set(v8::String::NewSymbol("convert2"), v8::FunctionTemplate::New(TestObjV8Internal::convert2MethodCallback, v8Undefined(), convert2Signature)); … … 3129 3129 // Custom Signature 'convert4' 3130 3130 const int convert4Argc = 1; 3131 v8::Handle<v8::FunctionTemplate> convert4Argv[convert4Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8d::info ) };3131 v8::Handle<v8::FunctionTemplate> convert4Argv[convert4Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8d::info, worldType) }; 3132 3132 v8::Handle<v8::Signature> convert4Signature = v8::Signature::New(desc, convert4Argc, convert4Argv); 3133 3133 proto->Set(v8::String::NewSymbol("convert4"), v8::FunctionTemplate::New(TestObjV8Internal::convert4MethodCallback, v8Undefined(), convert4Signature)); … … 3135 3135 // Custom Signature 'convert5' 3136 3136 const int convert5Argc = 1; 3137 v8::Handle<v8::FunctionTemplate> convert5Argv[convert5Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8e::info ) };3137 v8::Handle<v8::FunctionTemplate> convert5Argv[convert5Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8e::info, worldType) }; 3138 3138 v8::Handle<v8::Signature> convert5Signature = v8::Signature::New(desc, convert5Argc, convert5Argv); 3139 3139 proto->Set(v8::String::NewSymbol("convert5"), v8::FunctionTemplate::New(TestObjV8Internal::convert5MethodCallback, v8Undefined(), convert5Signature)); … … 3141 3141 // Custom Signature 'variadicNodeMethod' 3142 3142 const int variadicNodeMethodArgc = 2; 3143 v8::Handle<v8::FunctionTemplate> variadicNodeMethodArgv[variadicNodeMethodArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Node::info ), V8PerIsolateData::from(isolate)->rawTemplate(&V8Node::info) };3143 v8::Handle<v8::FunctionTemplate> variadicNodeMethodArgv[variadicNodeMethodArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8Node::info, worldType), V8PerIsolateData::from(isolate)->rawTemplate(&V8Node::info, worldType) }; 3144 3144 v8::Handle<v8::Signature> variadicNodeMethodSignature = v8::Signature::New(desc, variadicNodeMethodArgc, variadicNodeMethodArgv); 3145 3145 proto->Set(v8::String::NewSymbol("variadicNodeMethod"), v8::FunctionTemplate::New(TestObjV8Internal::variadicNodeMethodMethodCallback, v8Undefined(), variadicNodeMethodSignature)); … … 3154 3154 { 3155 3155 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 3156 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);3157 if (result != data->templateMap( ).end())3156 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 3157 if (result != data->templateMap(worldType).end()) 3158 3158 return result->value; 3159 3159 3160 3160 v8::HandleScope handleScope; 3161 3161 v8::Persistent<v8::FunctionTemplate> templ = 3162 ConfigureV8TestObjTemplate(data->rawTemplate(&info ), isolate, worldType);3163 data->templateMap( ).add(&info, templ);3162 ConfigureV8TestObjTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 3163 data->templateMap(worldType).add(&info, templ); 3164 3164 return templ; 3165 3165 } 3166 3166 3167 bool V8TestObj::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )3168 { 3169 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );3167 bool V8TestObj::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 3168 { 3169 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 3170 3170 } 3171 3171 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestObj* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp
r145538 r145554 168 168 { 169 169 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 170 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);171 if (result != data->templateMap( ).end())170 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 171 if (result != data->templateMap(worldType).end()) 172 172 return result->value; 173 173 174 174 v8::HandleScope handleScope; 175 175 v8::Persistent<v8::FunctionTemplate> templ = 176 ConfigureV8TestOverloadedConstructorsTemplate(data->rawTemplate(&info ), isolate, worldType);177 data->templateMap( ).add(&info, templ);176 ConfigureV8TestOverloadedConstructorsTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 177 data->templateMap(worldType).add(&info, templ); 178 178 return templ; 179 179 } 180 180 181 bool V8TestOverloadedConstructors::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )182 { 183 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );181 bool V8TestOverloadedConstructors::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 182 { 183 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 184 184 } 185 185 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestOverloadedConstructors.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestOverloadedConstructors* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp
r145538 r145554 333 333 { 334 334 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 335 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);336 if (result != data->templateMap( ).end())335 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 336 if (result != data->templateMap(worldType).end()) 337 337 return result->value; 338 338 339 339 v8::HandleScope handleScope; 340 340 v8::Persistent<v8::FunctionTemplate> templ = 341 ConfigureV8TestSerializedScriptValueInterfaceTemplate(data->rawTemplate(&info ), isolate, worldType);342 data->templateMap( ).add(&info, templ);341 ConfigureV8TestSerializedScriptValueInterfaceTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 342 data->templateMap(worldType).add(&info, templ); 343 343 return templ; 344 344 } 345 345 346 bool V8TestSerializedScriptValueInterface::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )347 { 348 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );346 bool V8TestSerializedScriptValueInterface::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 347 { 348 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 349 349 } 350 350 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h
r145538 r145554 36 36 public: 37 37 static const bool hasDependentLifetime = false; 38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );38 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 39 39 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 40 40 static TestSerializedScriptValueInterface* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestTypedefs.cpp
r145538 r145554 552 552 // Custom Signature 'methodWithSequenceArg' 553 553 const int methodWithSequenceArgArgc = 1; 554 v8::Handle<v8::FunctionTemplate> methodWithSequenceArgArgv[methodWithSequenceArgArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8sequence<SerializedScriptValue>::info ) };554 v8::Handle<v8::FunctionTemplate> methodWithSequenceArgArgv[methodWithSequenceArgArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8sequence<SerializedScriptValue>::info, worldType) }; 555 555 v8::Handle<v8::Signature> methodWithSequenceArgSignature = v8::Signature::New(desc, methodWithSequenceArgArgc, methodWithSequenceArgArgv); 556 556 proto->Set(v8::String::NewSymbol("methodWithSequenceArg"), v8::FunctionTemplate::New(TestTypedefsV8Internal::methodWithSequenceArgMethodCallback, v8Undefined(), methodWithSequenceArgSignature)); … … 558 558 // Custom Signature 'nullableArrayArg' 559 559 const int nullableArrayArgArgc = 1; 560 v8::Handle<v8::FunctionTemplate> nullableArrayArgArgv[nullableArrayArgArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info ) };560 v8::Handle<v8::FunctionTemplate> nullableArrayArgArgv[nullableArrayArgArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info, worldType) }; 561 561 v8::Handle<v8::Signature> nullableArrayArgSignature = v8::Signature::New(desc, nullableArrayArgArgc, nullableArrayArgArgv); 562 562 proto->Set(v8::String::NewSymbol("nullableArrayArg"), v8::FunctionTemplate::New(TestTypedefsV8Internal::nullableArrayArgMethodCallback, v8Undefined(), nullableArrayArgSignature)); … … 564 564 // Custom Signature 'stringArrayFunction' 565 565 const int stringArrayFunctionArgc = 1; 566 v8::Handle<v8::FunctionTemplate> stringArrayFunctionArgv[stringArrayFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info ) };566 v8::Handle<v8::FunctionTemplate> stringArrayFunctionArgv[stringArrayFunctionArgc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info, worldType) }; 567 567 v8::Handle<v8::Signature> stringArrayFunctionSignature = v8::Signature::New(desc, stringArrayFunctionArgc, stringArrayFunctionArgv); 568 568 proto->Set(v8::String::NewSymbol("stringArrayFunction"), v8::FunctionTemplate::New(TestTypedefsV8Internal::stringArrayFunctionMethodCallback, v8Undefined(), stringArrayFunctionSignature)); … … 570 570 // Custom Signature 'stringArrayFunction2' 571 571 const int stringArrayFunction2Argc = 1; 572 v8::Handle<v8::FunctionTemplate> stringArrayFunction2Argv[stringArrayFunction2Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info ) };572 v8::Handle<v8::FunctionTemplate> stringArrayFunction2Argv[stringArrayFunction2Argc] = { V8PerIsolateData::from(isolate)->rawTemplate(&V8DOMString[]::info, worldType) }; 573 573 v8::Handle<v8::Signature> stringArrayFunction2Signature = v8::Signature::New(desc, stringArrayFunction2Argc, stringArrayFunction2Argv); 574 574 proto->Set(v8::String::NewSymbol("stringArrayFunction2"), v8::FunctionTemplate::New(TestTypedefsV8Internal::stringArrayFunction2MethodCallback, v8Undefined(), stringArrayFunction2Signature)); … … 582 582 { 583 583 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 584 V8PerIsolateData::TemplateMap::iterator result = data->templateMap( ).find(&info);585 if (result != data->templateMap( ).end())584 V8PerIsolateData::TemplateMap::iterator result = data->templateMap(worldType).find(&info); 585 if (result != data->templateMap(worldType).end()) 586 586 return result->value; 587 587 588 588 v8::HandleScope handleScope; 589 589 v8::Persistent<v8::FunctionTemplate> templ = 590 ConfigureV8TestTypedefsTemplate(data->rawTemplate(&info ), isolate, worldType);591 data->templateMap( ).add(&info, templ);590 ConfigureV8TestTypedefsTemplate(data->rawTemplate(&info, worldType), isolate, worldType); 591 data->templateMap(worldType).add(&info, templ); 592 592 return templ; 593 593 } 594 594 595 bool V8TestTypedefs::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate )596 { 597 return V8PerIsolateData::from(isolate)->hasInstance(&info, value );595 bool V8TestTypedefs::HasInstance(v8::Handle<v8::Value> value, v8::Isolate* isolate, WrapperWorldType worldType) 596 { 597 return V8PerIsolateData::from(isolate)->hasInstance(&info, value, worldType); 598 598 } 599 599 -
trunk/Source/WebCore/bindings/scripts/test/V8/V8TestTypedefs.h
r145538 r145554 35 35 public: 36 36 static const bool hasDependentLifetime = false; 37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate* );37 static bool HasInstance(v8::Handle<v8::Value>, v8::Isolate*, WrapperWorldType = GetFromContext); 38 38 static v8::Persistent<v8::FunctionTemplate> GetTemplate(v8::Isolate*, WrapperWorldType); 39 39 static TestTypedefs* toNative(v8::Handle<v8::Object> object) -
trunk/Source/WebCore/bindings/v8/V8AdaptorFunction.cpp
r145175 r145554 45 45 ASSERT(isolate); 46 46 V8PerIsolateData* data = V8PerIsolateData::from(isolate); 47 V8PerIsolateData::TemplateMap::iterator result = data->rawTemplateMap( ).find(&info);48 if (result != data->rawTemplateMap( ).end())47 V8PerIsolateData::TemplateMap::iterator result = data->rawTemplateMap(worldType).find(&info); 48 if (result != data->rawTemplateMap(worldType).end()) 49 49 return result->value; 50 50 // The lifetime is of newTemplate is delegated to the TemplateMap thus this won't be leaked. 51 51 v8::Persistent<v8::FunctionTemplate> newTemplate = v8::Persistent<v8::FunctionTemplate>::New(isolate, v8::FunctionTemplate::New()); 52 data->rawTemplateMap( ).add(&info, configureTemplate(newTemplate));52 data->rawTemplateMap(worldType).add(&info, configureTemplate(newTemplate)); 53 53 return newTemplate; 54 54 } -
trunk/Source/WebCore/bindings/v8/V8GCController.cpp
r145162 r145554 304 304 v8::Persistent<v8::Object> wrapper = v8::Persistent<v8::Object>::Cast(value); 305 305 ASSERT(V8DOMWrapper::maybeDOMWrapper(value)); 306 ASSERT(V8Node::HasInstance(wrapper, m_isolate ));306 ASSERT(V8Node::HasInstance(wrapper, m_isolate, MainWorld) || V8Node::HasInstance(wrapper, m_isolate, IsolatedWorld)); 307 307 Node* node = V8Node::toNative(wrapper); 308 308 // A minor DOM GC can handle only node wrappers in the main world. … … 377 377 if (classId == v8DOMNodeClassId) { 378 378 UNUSED_PARAM(m_isolate); 379 ASSERT(V8Node::HasInstance(wrapper, m_isolate ));379 ASSERT(V8Node::HasInstance(wrapper, m_isolate, MainWorld) || V8Node::HasInstance(wrapper, m_isolate, IsolatedWorld)); 380 380 ASSERT(!wrapper.IsIndependent(m_isolate)); 381 381 -
trunk/Source/WebCore/bindings/v8/V8PerIsolateData.cpp
r145538 r145554 105 105 { 106 106 MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::Binding); 107 info.addMember(m_rawTemplates, "rawTemplates"); 108 info.addMember(m_templates, "templates"); 107 info.addMember(m_rawTemplatesForMainWorld, "rawTemplatesForMainWorld"); 108 info.addMember(m_rawTemplatesForNonMainWorld, "rawTemplatesForNonMainWorld"); 109 info.addMember(m_templatesForMainWorld, "templatesForMainWorld"); 110 info.addMember(m_templatesForNonMainWorld, "templatesForNonMainWorld"); 109 111 info.addMember(m_stringCache, "stringCache"); 110 112 info.addMember(m_integerCache, "integerCache"); … … 123 125 } 124 126 125 v8::Persistent<v8::FunctionTemplate> V8PerIsolateData::privateTemplate(WrapperWorldType, void* privatePointer, v8::InvocationCallback callback, v8::Handle<v8::Value> data, v8::Handle<v8::Signature> signature, int length) 126 { 127 v8::Persistent<v8::FunctionTemplate> V8PerIsolateData::privateTemplate(WrapperWorldType currentWorldType, void* privatePointer, v8::InvocationCallback callback, v8::Handle<v8::Value> data, v8::Handle<v8::Signature> signature, int length) 128 { 129 ASSERT(currentWorldType != GetFromContext); 127 130 v8::Persistent<v8::FunctionTemplate> privateTemplate; 128 V8PerIsolateData::TemplateMap::iterator result = m_templates.find(privatePointer); 129 if (result != m_templates.end()) 131 TemplateMap& templates = templateMap(currentWorldType); 132 TemplateMap::iterator result = templates.find(privatePointer); 133 if (result != templates.end()) 130 134 return result->value; 131 135 v8::Persistent<v8::FunctionTemplate> newPrivateTemplate = v8::Persistent<v8::FunctionTemplate>::New(m_isolate, v8::FunctionTemplate::New(callback, data, signature, length)); 132 m_templates.add(privatePointer, newPrivateTemplate);136 templates.add(privatePointer, newPrivateTemplate); 133 137 return newPrivateTemplate; 134 138 } 135 139 136 v8::Persistent<v8::FunctionTemplate> V8PerIsolateData::rawTemplate(WrapperTypeInfo* info) 137 { 138 TemplateMap::iterator result = m_rawTemplates.find(info); 139 if (result != m_rawTemplates.end()) 140 v8::Persistent<v8::FunctionTemplate> V8PerIsolateData::rawTemplate(WrapperTypeInfo* info, WrapperWorldType currentWorldType) 141 { 142 ASSERT(currentWorldType != GetFromContext); 143 TemplateMap& templates = rawTemplateMap(currentWorldType); 144 TemplateMap::iterator result = templates.find(info); 145 if (result != templates.end()) 140 146 return result->value; 141 147 142 148 v8::HandleScope handleScope; 143 149 v8::Persistent<v8::FunctionTemplate> templ = createRawTemplate(m_isolate); 144 m_rawTemplates.add(info, templ);150 templates.add(info, templ); 145 151 return templ; 146 152 } 147 153 148 bool V8PerIsolateData::hasInstance(WrapperTypeInfo* info, v8::Handle<v8::Value> value) 149 { 150 return rawTemplate(info)->HasInstance(value); 154 bool V8PerIsolateData::hasInstance(WrapperTypeInfo* info, v8::Handle<v8::Value> value, WrapperWorldType currentWorldType) 155 { 156 if (currentWorldType == GetFromContext) 157 currentWorldType = worldType(m_isolate); 158 TemplateMap& templates = rawTemplateMap(currentWorldType); 159 TemplateMap::iterator result = templates.find(info); 160 if (result == templates.end()) 161 return false; 162 return result->value->HasInstance(value); 151 163 } 152 164 -
trunk/Source/WebCore/bindings/v8/V8PerIsolateData.h
r145538 r145554 68 68 typedef HashMap<void*, v8::Persistent<v8::FunctionTemplate> > TemplateMap; 69 69 70 TemplateMap& rawTemplateMap() { return m_rawTemplates; } 71 TemplateMap& templateMap() { return m_templates; } 70 TemplateMap& rawTemplateMap(WrapperWorldType worldType) 71 { 72 if (worldType == MainWorld) 73 return m_rawTemplatesForMainWorld; 74 return m_rawTemplatesForNonMainWorld; 75 } 76 77 TemplateMap& templateMap(WrapperWorldType worldType) 78 { 79 if (worldType == MainWorld) 80 return m_templatesForMainWorld; 81 return m_templatesForNonMainWorld; 82 } 72 83 73 84 v8::Handle<v8::FunctionTemplate> toStringTemplate(); … … 131 142 v8::Persistent<v8::FunctionTemplate> privateTemplate(WrapperWorldType, void* privatePointer, v8::InvocationCallback, v8::Handle<v8::Value> data, v8::Handle<v8::Signature>, int length = 0); 132 143 133 v8::Persistent<v8::FunctionTemplate> rawTemplate(WrapperTypeInfo* );144 v8::Persistent<v8::FunctionTemplate> rawTemplate(WrapperTypeInfo*, WrapperWorldType); 134 145 135 bool hasInstance(WrapperTypeInfo*, v8::Handle<v8::Value> );146 bool hasInstance(WrapperTypeInfo*, v8::Handle<v8::Value>, WrapperWorldType); 136 147 137 148 private: … … 141 152 142 153 v8::Isolate* m_isolate; 143 TemplateMap m_rawTemplates; 144 TemplateMap m_templates; 154 TemplateMap m_rawTemplatesForMainWorld; 155 TemplateMap m_rawTemplatesForNonMainWorld; 156 TemplateMap m_templatesForMainWorld; 157 TemplateMap m_templatesForNonMainWorld; 145 158 ScopedPersistent<v8::FunctionTemplate> m_toStringTemplate; 146 159 v8::Persistent<v8::FunctionTemplate> m_lazyEventListenerToStringTemplate; -
trunk/Source/WebCore/bindings/v8/WrapperTypeInfo.h
r144865 r145554 53 53 MainWorld, 54 54 IsolatedWorld, 55 WorkerWorld 55 WorkerWorld, 56 // Whatever world type the current context has. FIXME: remove this. 57 GetFromContext 56 58 }; 57 59 -
trunk/Source/WebCore/bindings/v8/custom/V8LocationCustom.cpp
r145538 r145554 144 144 WrapperWorldType currentWorldType = worldType(isolate); 145 145 V8PerIsolateData* data = V8PerIsolateData::from(info.GetIsolate()); 146 v8::Persistent<v8::FunctionTemplate> privateTemplate = data->privateTemplate(currentWorldType, &privateTemplateUniqueKey, V8Location::reloadMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info )));146 v8::Persistent<v8::FunctionTemplate> privateTemplate = data->privateTemplate(currentWorldType, &privateTemplateUniqueKey, V8Location::reloadMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info, currentWorldType))); 147 147 148 148 v8::Handle<v8::Object> holder = info.This()->FindInstanceInPrototypeChain(V8Location::GetTemplate(isolate, currentWorldType)); … … 155 155 if (!BindingSecurity::shouldAllowAccessToFrame(BindingState::instance(), imp->frame(), DoNotReportSecurityError)) { 156 156 static const char* sharedTemplateUniqueKey = "reloadSharedTemplate"; 157 v8::Persistent<v8::FunctionTemplate> sharedTemplate = data->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, V8Location::reloadMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info )));157 v8::Persistent<v8::FunctionTemplate> sharedTemplate = data->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, V8Location::reloadMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info, currentWorldType))); 158 158 return sharedTemplate->GetFunction(); 159 159 } … … 168 168 WrapperWorldType currentWorldType = worldType(info.GetIsolate()); 169 169 V8PerIsolateData* data = V8PerIsolateData::from(info.GetIsolate()); 170 v8::Persistent<v8::FunctionTemplate> privateTemplate = V8PerIsolateData::from(isolate)->privateTemplate(currentWorldType, &privateTemplateUniqueKey, V8Location::replaceMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info )));170 v8::Persistent<v8::FunctionTemplate> privateTemplate = V8PerIsolateData::from(isolate)->privateTemplate(currentWorldType, &privateTemplateUniqueKey, V8Location::replaceMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info, currentWorldType))); 171 171 172 172 v8::Handle<v8::Object> holder = info.This()->FindInstanceInPrototypeChain(V8Location::GetTemplate(isolate, currentWorldType)); … … 179 179 if (!BindingSecurity::shouldAllowAccessToFrame(BindingState::instance(), imp->frame(), DoNotReportSecurityError)) { 180 180 static const char* sharedTemplateUniqueKey = "replaceSharedTemplate"; 181 v8::Persistent<v8::FunctionTemplate> sharedTemplate = V8PerIsolateData::from(info.GetIsolate())->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, V8Location::replaceMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info )));181 v8::Persistent<v8::FunctionTemplate> sharedTemplate = V8PerIsolateData::from(info.GetIsolate())->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, V8Location::replaceMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info, currentWorldType))); 182 182 return sharedTemplate->GetFunction(); 183 183 } … … 192 192 WrapperWorldType currentWorldType = worldType(info.GetIsolate()); 193 193 V8PerIsolateData* data = V8PerIsolateData::from(info.GetIsolate()); 194 v8::Persistent<v8::FunctionTemplate> privateTemplate = data->privateTemplate(currentWorldType, &privateTemplateUniqueKey, V8Location::assignMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info )));194 v8::Persistent<v8::FunctionTemplate> privateTemplate = data->privateTemplate(currentWorldType, &privateTemplateUniqueKey, V8Location::assignMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info, currentWorldType))); 195 195 196 196 v8::Handle<v8::Object> holder = info.This()->FindInstanceInPrototypeChain(V8Location::GetTemplate(isolate, currentWorldType)); … … 203 203 if (!BindingSecurity::shouldAllowAccessToFrame(BindingState::instance(), imp->frame(), DoNotReportSecurityError)) { 204 204 static const char* sharedTemplateUniqueKey = "assignSharedTemplate"; 205 v8::Persistent<v8::FunctionTemplate> sharedTemplate = data->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, V8Location::assignMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info )));205 v8::Persistent<v8::FunctionTemplate> sharedTemplate = data->privateTemplate(currentWorldType, &sharedTemplateUniqueKey, V8Location::assignMethodCustom, v8Undefined(), v8::Signature::New(data->rawTemplate(&V8Location::info, currentWorldType))); 206 206 return sharedTemplate->GetFunction(); 207 207 } -
trunk/Source/WebCore/bindings/v8/custom/V8NodeListCustom.cpp
r141857 r145554 62 62 void* V8NodeList::opaqueRootForGC(void* object, v8::Persistent<v8::Object> wrapper, v8::Isolate* isolate) 63 63 { 64 ASSERT(V8NodeList::HasInstance(wrapper, isolate ));64 ASSERT(V8NodeList::HasInstance(wrapper, isolate, MainWorld) || V8NodeList::HasInstance(wrapper, isolate, IsolatedWorld)); 65 65 NodeList* impl = static_cast<NodeList*>(object); 66 66 if (!impl->isLiveNodeList())
Note: See TracChangeset
for help on using the changeset viewer.