Skip to content

Commit 71ffb75

Browse files
committed
An object's structure should reference the global object responsible for its creation
https://bugs.webkit.org/show_bug.cgi?id=67624 Reviewed by Gavin Barraclough. Source/JavaScriptCore: Add a reference to a GlobalObject to Structure, and update all calls to Structure::create() to pass the global object that is the origin for that structure. For objects where the appropriate global object isn't available at construction time (global object prototypes, etc), or objects that logically don't have a global object (strings, etc) we just pass null. This change is largely mechanical (passing a new globalObject parameter around). * API/JSCallbackConstructor.h: (JSC::JSCallbackConstructor::createStructure): * API/JSCallbackFunction.h: (JSC::JSCallbackFunction::createStructure): * API/JSCallbackObject.h: (JSC::JSCallbackObject::createStructure): * API/JSContextRef.cpp: * JavaScriptCore.exp: * debugger/DebuggerActivation.h: (JSC::DebuggerActivation::createStructure): * runtime/Arguments.h: (JSC::Arguments::createStructure): * runtime/ArrayConstructor.h: (JSC::ArrayConstructor::createStructure): * runtime/ArrayPrototype.h: (JSC::ArrayPrototype::createStructure): * runtime/BooleanObject.h: (JSC::BooleanObject::createStructure): * runtime/BooleanPrototype.h: (JSC::BooleanPrototype::createStructure): * runtime/DateConstructor.h: (JSC::DateConstructor::createStructure): * runtime/DateInstance.h: (JSC::DateInstance::createStructure): * runtime/DatePrototype.h: (JSC::DatePrototype::createStructure): * runtime/ErrorInstance.h: (JSC::ErrorInstance::createStructure): * runtime/ErrorPrototype.h: (JSC::ErrorPrototype::createStructure): * runtime/Executable.h: (JSC::ExecutableBase::createStructure): (JSC::NativeExecutable::createStructure): (JSC::EvalExecutable::createStructure): (JSC::ProgramExecutable::createStructure): (JSC::FunctionExecutable::createStructure): * runtime/FunctionPrototype.h: (JSC::FunctionPrototype::createStructure): * runtime/GetterSetter.h: (JSC::GetterSetter::createStructure): * runtime/InternalFunction.h: (JSC::InternalFunction::createStructure): * runtime/JSAPIValueWrapper.h: (JSC::JSAPIValueWrapper::createStructure): * runtime/JSActivation.h: (JSC::JSActivation::createStructure): * runtime/JSArray.h: (JSC::JSArray::createStructure): * runtime/JSByteArray.cpp: (JSC::JSByteArray::createStructure): * runtime/JSByteArray.h: * runtime/JSFunction.h: (JSC::JSFunction::createStructure): * runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): * runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset): * runtime/JSGlobalObject.h: (JSC::JSGlobalObject::finishCreation): (JSC::JSGlobalObject::createStructure): * runtime/JSNotAnObject.h: (JSC::JSNotAnObject::createStructure): * runtime/JSONObject.h: (JSC::JSONObject::createStructure): * runtime/JSObject.cpp: (JSC::JSObject::createInheritorID): * runtime/JSObject.h: (JSC::JSObject::createStructure): (JSC::JSNonFinalObject::createStructure): (JSC::JSFinalObject::createStructure): (JSC::createEmptyObjectStructure): * runtime/JSObjectWithGlobalObject.h: (JSC::JSObjectWithGlobalObject::createStructure): * runtime/JSPropertyNameIterator.h: (JSC::JSPropertyNameIterator::createStructure): * runtime/JSStaticScopeObject.h: (JSC::JSStaticScopeObject::createStructure): * runtime/JSString.h: (JSC::RopeBuilder::createStructure): * runtime/JSVariableObject.h: (JSC::JSVariableObject::createStructure): * runtime/JSWrapperObject.h: (JSC::JSWrapperObject::createStructure): * runtime/MathObject.h: (JSC::MathObject::createStructure): * runtime/NativeErrorConstructor.h: (JSC::NativeErrorConstructor::createStructure): (JSC::NativeErrorConstructor::constructorBody): * runtime/NumberConstructor.h: (JSC::NumberConstructor::createStructure): * runtime/NumberObject.h: (JSC::NumberObject::createStructure): * runtime/NumberPrototype.h: (JSC::NumberPrototype::createStructure): * runtime/ObjectConstructor.h: (JSC::ObjectConstructor::createStructure): * runtime/ObjectPrototype.h: (JSC::ObjectPrototype::createStructure): * runtime/RegExp.h: (JSC::RegExp::createStructure): * runtime/RegExpConstructor.h: (JSC::RegExpConstructor::createStructure): * runtime/RegExpObject.h: (JSC::RegExpObject::createStructure): * runtime/RegExpPrototype.h: (JSC::RegExpPrototype::createStructure): * runtime/ScopeChain.h: (JSC::ScopeChainNode::createStructure): * runtime/StrictEvalActivation.h: (JSC::StrictEvalActivation::createStructure): * runtime/StringConstructor.h: (JSC::StringConstructor::createStructure): * runtime/StringObject.h: (JSC::StringObject::createStructure): * runtime/StringObjectThatMasqueradesAsUndefined.h: (JSC::StringObjectThatMasqueradesAsUndefined::create): (JSC::StringObjectThatMasqueradesAsUndefined::createStructure): * runtime/StringPrototype.h: (JSC::StringPrototype::createStructure): * runtime/Structure.cpp: (JSC::Structure::Structure): (JSC::Structure::visitChildren): * runtime/Structure.h: (JSC::Structure::create): (JSC::Structure::globalObject): (JSC::Structure::setGlobalObject): * runtime/StructureChain.h: (JSC::StructureChain::createStructure): Source/JavaScriptGlue: Update for Structure::create() requiring a global object. * JSRun.h: (JSGlueGlobalObject::create): * UserObjectImp.h: (UserObjectImp::createStructure): Source/WebCore: Update calls to Structure::create() to pass the globalObject in, and update the CodeGenerator to generate appropriate createStructure methods. * bindings/js/JSAudioConstructor.h: (WebCore::JSAudioConstructor::createStructure): * bindings/js/JSDOMBinding.h: (WebCore::DOMConstructorObject::createStructure): (WebCore::getDOMStructure): * bindings/js/JSDOMGlobalObject.h: (WebCore::JSDOMGlobalObject::createStructure): (WebCore::getDOMConstructor): * bindings/js/JSDOMWindowBase.h: (WebCore::JSDOMWindowBase::createStructure): * bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::setWindow): * bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::createStructure): * bindings/js/JSDOMWrapper.h: (WebCore::JSDOMWrapper::createStructure): * bindings/js/JSImageConstructor.h: (WebCore::JSImageConstructor::createStructure): * bindings/js/JSImageDataCustom.cpp: (WebCore::toJS): * bindings/js/JSOptionConstructor.h: (WebCore::JSOptionConstructor::createStructure): * bindings/js/JSWorkerContextBase.h: (WebCore::JSWorkerContextBase::createStructure): * bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::initScript): * bindings/scripts/CodeGeneratorJS.pm: (GenerateHeader): (GenerateImplementation): (GenerateConstructorDeclaration): * bridge/c/CRuntimeObject.h: (JSC::Bindings::CRuntimeObject::createStructure): * bridge/c/c_instance.cpp: (JSC::Bindings::CRuntimeMethod::createStructure): * bridge/jni/jsc/JavaInstanceJSC.cpp: (JavaRuntimeMethod::createStructure): * bridge/jni/jsc/JavaRuntimeObject.h: (JSC::Bindings::JavaRuntimeObject::createStructure): * bridge/objc/ObjCRuntimeObject.h: (JSC::Bindings::ObjCRuntimeObject::createStructure): * bridge/objc/objc_instance.mm: (ObjCRuntimeMethod::createStructure): * bridge/objc/objc_runtime.h: (JSC::Bindings::ObjcFallbackObjectImp::createStructure): * bridge/runtime_array.h: (JSC::RuntimeArray::createStructure): * bridge/runtime_method.h: (JSC::RuntimeMethod::createStructure): * bridge/runtime_object.h: (JSC::Bindings::RuntimeObject::createStructure): Source/WebKit/mac: Update for new Structure::create() globalObject parameter. * Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyRuntimeMethod::createStructure): * Plugins/Hosted/ProxyRuntimeObject.h: (WebKit::ProxyRuntimeObject::createStructure): Source/WebKit2: Update for new Structure::create globalObject parameter. * WebProcess/Plugins/Netscape/JSNPMethod.cpp: (WebKit::JSNPMethod::create): * WebProcess/Plugins/Netscape/JSNPMethod.h: (WebKit::JSNPMethod::createStructure): * WebProcess/Plugins/Netscape/JSNPObject.cpp: (WebKit::JSNPObject::create): * WebProcess/Plugins/Netscape/JSNPObject.h: (WebKit::JSNPObject::createStructure): Canonical link: https://commits.webkit.org/83504@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@94599 268f45cc-cd09-0410-ab3c-d52691b4dbfc
1 parent e2c2d8f commit 71ffb75

100 files changed

Lines changed: 518 additions & 247 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎Source/JavaScriptCore/API/JSCallbackConstructor.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ class JSCallbackConstructor : public JSObjectWithGlobalObject {
4545
JSObjectCallAsConstructorCallback callback() const { return m_callback; }
4646
static const ClassInfo s_info;
4747

48-
static Structure* createStructure(JSGlobalData& globalData, JSValue proto)
48+
static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue proto)
4949
{
50-
return Structure::create(globalData, proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
50+
return Structure::create(globalData, globalObject, proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
5151
}
5252

5353
protected:

‎Source/JavaScriptCore/API/JSCallbackFunction.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,9 @@ class JSCallbackFunction : public InternalFunction {
4747

4848
// InternalFunction mish-mashes constructor and function behavior -- we should
4949
// refactor the code so this override isn't necessary
50-
static Structure* createStructure(JSGlobalData& globalData, JSValue proto)
50+
static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue proto)
5151
{
52-
return Structure::create(globalData, proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
52+
return Structure::create(globalData, globalObject, proto, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
5353
}
5454

5555
private:

‎Source/JavaScriptCore/API/JSCallbackObject.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,9 @@ class JSCallbackObject : public Parent {
149149
JSClassRef classRef() const { return m_callbackObjectData->jsClass; }
150150
bool inherits(JSClassRef) const;
151151

152-
static Structure* createStructure(JSGlobalData& globalData, JSValue proto)
152+
static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue proto)
153153
{
154-
return Structure::create(globalData, proto, TypeInfo(ObjectType, StructureFlags), Parent::AnonymousSlotCount, &s_info);
154+
return Structure::create(globalData, globalObject, proto, TypeInfo(ObjectType, StructureFlags), Parent::AnonymousSlotCount, &s_info);
155155
}
156156

157157
JSValue getPrivateProperty(const Identifier& propertyName) const

‎Source/JavaScriptCore/API/JSContextRef.cpp‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ JSGlobalContextRef JSGlobalContextCreateInGroup(JSContextGroupRef group, JSClass
101101
return JSGlobalContextRetain(toGlobalRef(globalObject->globalExec()));
102102
}
103103

104-
JSGlobalObject* globalObject = JSCallbackObject<JSGlobalObject>::create(*globalData, globalObjectClass, JSCallbackObject<JSGlobalObject>::createStructure(*globalData, jsNull()));
104+
JSGlobalObject* globalObject = JSCallbackObject<JSGlobalObject>::create(*globalData, globalObjectClass, JSCallbackObject<JSGlobalObject>::createStructure(*globalData, 0, jsNull()));
105105
ExecState* exec = globalObject->globalExec();
106106
JSValue prototype = globalObjectClass->prototype(exec);
107107
if (!prototype)

‎Source/JavaScriptCore/ChangeLog‎

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,148 @@
1+
2011-09-05 Oliver Hunt <oliver@apple.com>
2+
3+
An object's structure should reference the global object responsible for its creation
4+
https://bugs.webkit.org/show_bug.cgi?id=67624
5+
6+
Reviewed by Gavin Barraclough.
7+
8+
Add a reference to a GlobalObject to Structure, and update all calls to
9+
Structure::create() to pass the global object that is the origin for that
10+
structure. For objects where the appropriate global object isn't available
11+
at construction time (global object prototypes, etc), or objects that
12+
logically don't have a global object (strings, etc) we just pass null.
13+
14+
This change is largely mechanical (passing a new globalObject parameter
15+
around).
16+
17+
* API/JSCallbackConstructor.h:
18+
(JSC::JSCallbackConstructor::createStructure):
19+
* API/JSCallbackFunction.h:
20+
(JSC::JSCallbackFunction::createStructure):
21+
* API/JSCallbackObject.h:
22+
(JSC::JSCallbackObject::createStructure):
23+
* API/JSContextRef.cpp:
24+
* JavaScriptCore.exp:
25+
* debugger/DebuggerActivation.h:
26+
(JSC::DebuggerActivation::createStructure):
27+
* runtime/Arguments.h:
28+
(JSC::Arguments::createStructure):
29+
* runtime/ArrayConstructor.h:
30+
(JSC::ArrayConstructor::createStructure):
31+
* runtime/ArrayPrototype.h:
32+
(JSC::ArrayPrototype::createStructure):
33+
* runtime/BooleanObject.h:
34+
(JSC::BooleanObject::createStructure):
35+
* runtime/BooleanPrototype.h:
36+
(JSC::BooleanPrototype::createStructure):
37+
* runtime/DateConstructor.h:
38+
(JSC::DateConstructor::createStructure):
39+
* runtime/DateInstance.h:
40+
(JSC::DateInstance::createStructure):
41+
* runtime/DatePrototype.h:
42+
(JSC::DatePrototype::createStructure):
43+
* runtime/ErrorInstance.h:
44+
(JSC::ErrorInstance::createStructure):
45+
* runtime/ErrorPrototype.h:
46+
(JSC::ErrorPrototype::createStructure):
47+
* runtime/Executable.h:
48+
(JSC::ExecutableBase::createStructure):
49+
(JSC::NativeExecutable::createStructure):
50+
(JSC::EvalExecutable::createStructure):
51+
(JSC::ProgramExecutable::createStructure):
52+
(JSC::FunctionExecutable::createStructure):
53+
* runtime/FunctionPrototype.h:
54+
(JSC::FunctionPrototype::createStructure):
55+
* runtime/GetterSetter.h:
56+
(JSC::GetterSetter::createStructure):
57+
* runtime/InternalFunction.h:
58+
(JSC::InternalFunction::createStructure):
59+
* runtime/JSAPIValueWrapper.h:
60+
(JSC::JSAPIValueWrapper::createStructure):
61+
* runtime/JSActivation.h:
62+
(JSC::JSActivation::createStructure):
63+
* runtime/JSArray.h:
64+
(JSC::JSArray::createStructure):
65+
* runtime/JSByteArray.cpp:
66+
(JSC::JSByteArray::createStructure):
67+
* runtime/JSByteArray.h:
68+
* runtime/JSFunction.h:
69+
(JSC::JSFunction::createStructure):
70+
* runtime/JSGlobalData.cpp:
71+
(JSC::JSGlobalData::JSGlobalData):
72+
* runtime/JSGlobalObject.cpp:
73+
(JSC::JSGlobalObject::reset):
74+
* runtime/JSGlobalObject.h:
75+
(JSC::JSGlobalObject::finishCreation):
76+
(JSC::JSGlobalObject::createStructure):
77+
* runtime/JSNotAnObject.h:
78+
(JSC::JSNotAnObject::createStructure):
79+
* runtime/JSONObject.h:
80+
(JSC::JSONObject::createStructure):
81+
* runtime/JSObject.cpp:
82+
(JSC::JSObject::createInheritorID):
83+
* runtime/JSObject.h:
84+
(JSC::JSObject::createStructure):
85+
(JSC::JSNonFinalObject::createStructure):
86+
(JSC::JSFinalObject::createStructure):
87+
(JSC::createEmptyObjectStructure):
88+
* runtime/JSObjectWithGlobalObject.h:
89+
(JSC::JSObjectWithGlobalObject::createStructure):
90+
* runtime/JSPropertyNameIterator.h:
91+
(JSC::JSPropertyNameIterator::createStructure):
92+
* runtime/JSStaticScopeObject.h:
93+
(JSC::JSStaticScopeObject::createStructure):
94+
* runtime/JSString.h:
95+
(JSC::RopeBuilder::createStructure):
96+
* runtime/JSVariableObject.h:
97+
(JSC::JSVariableObject::createStructure):
98+
* runtime/JSWrapperObject.h:
99+
(JSC::JSWrapperObject::createStructure):
100+
* runtime/MathObject.h:
101+
(JSC::MathObject::createStructure):
102+
* runtime/NativeErrorConstructor.h:
103+
(JSC::NativeErrorConstructor::createStructure):
104+
(JSC::NativeErrorConstructor::constructorBody):
105+
* runtime/NumberConstructor.h:
106+
(JSC::NumberConstructor::createStructure):
107+
* runtime/NumberObject.h:
108+
(JSC::NumberObject::createStructure):
109+
* runtime/NumberPrototype.h:
110+
(JSC::NumberPrototype::createStructure):
111+
* runtime/ObjectConstructor.h:
112+
(JSC::ObjectConstructor::createStructure):
113+
* runtime/ObjectPrototype.h:
114+
(JSC::ObjectPrototype::createStructure):
115+
* runtime/RegExp.h:
116+
(JSC::RegExp::createStructure):
117+
* runtime/RegExpConstructor.h:
118+
(JSC::RegExpConstructor::createStructure):
119+
* runtime/RegExpObject.h:
120+
(JSC::RegExpObject::createStructure):
121+
* runtime/RegExpPrototype.h:
122+
(JSC::RegExpPrototype::createStructure):
123+
* runtime/ScopeChain.h:
124+
(JSC::ScopeChainNode::createStructure):
125+
* runtime/StrictEvalActivation.h:
126+
(JSC::StrictEvalActivation::createStructure):
127+
* runtime/StringConstructor.h:
128+
(JSC::StringConstructor::createStructure):
129+
* runtime/StringObject.h:
130+
(JSC::StringObject::createStructure):
131+
* runtime/StringObjectThatMasqueradesAsUndefined.h:
132+
(JSC::StringObjectThatMasqueradesAsUndefined::create):
133+
(JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
134+
* runtime/StringPrototype.h:
135+
(JSC::StringPrototype::createStructure):
136+
* runtime/Structure.cpp:
137+
(JSC::Structure::Structure):
138+
(JSC::Structure::visitChildren):
139+
* runtime/Structure.h:
140+
(JSC::Structure::create):
141+
(JSC::Structure::globalObject):
142+
(JSC::Structure::setGlobalObject):
143+
* runtime/StructureChain.h:
144+
(JSC::StructureChain::createStructure):
145+
1146
2011-09-06 Michael Saboff <msaboff@apple.com>
2147

3148
Add windows changes for JSC:RegExp functional tests

‎Source/JavaScriptCore/JavaScriptCore.exp‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ __ZN3JSC10JSFunctionC1EPNS_9ExecStateEPNS_14JSGlobalObjectEPNS_9StructureE
117117
__ZN3JSC10throwErrorEPNS_9ExecStateENS_7JSValueE
118118
__ZN3JSC10throwErrorEPNS_9ExecStateEPNS_8JSObjectE
119119
__ZN3JSC11JSByteArray13s_defaultInfoE
120-
__ZN3JSC11JSByteArray15createStructureERNS_12JSGlobalDataENS_7JSValueEPKNS_9ClassInfoE
120+
__ZN3JSC11JSByteArray15createStructureERNS_12JSGlobalDataEPNS_14JSGlobalObjectENS_7JSValueEPKNS_9ClassInfoE
121121
__ZN3JSC11JSByteArrayC1EPNS_9ExecStateEPNS_9StructureEPN3WTF9ByteArrayE
122122
__ZN3JSC11ParserArena5resetEv
123123
__ZN3JSC11checkSyntaxEPNS_9ExecStateERKNS_10SourceCodeE

‎Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ EXPORTS
114114
?createReferenceError@JSC@@YAPAVJSObject@1@PAVExecState@1@ABVUString@1@@Z
115115
?createSingleCharacterString@SmallStrings@JSC@@AAEXPAVJSGlobalData@2@E@Z
116116
?createStackOverflowError@JSC@@YAPAVJSObject@1@PAVExecState@1@@Z
117-
?createStructure@JSByteArray@JSC@@SAPAVStructure@2@AAVJSGlobalData@2@VJSValue@2@PBUClassInfo@2@@Z
117+
?createStructure@JSByteArray@JSC@@SAPAVStructure@2@AAVJSGlobalData@2@PAVJSGlobalObject@2@VJSValue@2@PBUClassInfo@2@@Z
118118
?createSyntaxError@JSC@@YAPAVJSObject@1@PAVExecState@1@ABVUString@1@@Z
119119
?createTable@HashTable@JSC@@ABEXPAVJSGlobalData@2@@Z
120120
?createThread@WTF@@YAIP6APAXPAX@Z0@Z

‎Source/JavaScriptCore/debugger/DebuggerActivation.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,9 @@ namespace JSC {
4848
virtual JSValue lookupGetter(ExecState*, const Identifier& propertyName);
4949
virtual JSValue lookupSetter(ExecState*, const Identifier& propertyName);
5050

51-
static Structure* createStructure(JSGlobalData& globalData, JSValue prototype)
51+
static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue prototype)
5252
{
53-
return Structure::create(globalData, prototype, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
53+
return Structure::create(globalData, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
5454
}
5555

5656
protected:

‎Source/JavaScriptCore/runtime/Arguments.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,9 @@ namespace JSC {
111111
d->registers = &activation->registerAt(0);
112112
}
113113

114-
static Structure* createStructure(JSGlobalData& globalData, JSValue prototype)
114+
static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue prototype)
115115
{
116-
return Structure::create(globalData, prototype, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
116+
return Structure::create(globalData, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
117117
}
118118

119119
protected:

‎Source/JavaScriptCore/runtime/ArrayConstructor.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ namespace JSC {
3838

3939
static const ClassInfo s_info;
4040

41-
static Structure* createStructure(JSGlobalData& globalData, JSValue prototype)
41+
static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue prototype)
4242
{
43-
return Structure::create(globalData, prototype, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
43+
return Structure::create(globalData, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), AnonymousSlotCount, &s_info);
4444
}
4545

4646
protected:

0 commit comments

Comments
 (0)