RESOLVED FIXED97716
Generalize JSGlobalThis as JSProxy
https://bugs.webkit.org/show_bug.cgi?id=97716
Summary Generalize JSGlobalThis as JSProxy
Gavin Barraclough
Reported 2012-09-26 12:10:59 PDT
And move proxying functionality up from the window shell into JSProxy.
Attachments
Fix (55.89 KB, patch)
2012-09-26 12:18 PDT, Gavin Barraclough
oliver: review+
Gavin Barraclough
Comment 1 2012-09-26 12:18:52 PDT
Gavin Barraclough
Comment 2 2012-09-26 12:39:16 PDT
Fixed in r129685.
Beth Dakin
Comment 3 2012-09-26 13:28:30 PDT
Looks like this change broke the Windows build. Here's some of the builder output: 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static class JSC::JSObject * __cdecl JSC::JSGlobalObject::toThisObject(class JSC::JSCell *,class JSC::ExecState *)" (?toThisObject@JSGlobalObject@JSC@@KAPAVJSObject@2@PAVJSCell@2@PAVExecState@2@@Z) 12>WebCore.lib(DerivedSources.obj) : error LNK2001: unresolved external symbol "protected: static class JSC::JSObject * __cdecl JSC::JSGlobalObject::toThisObject(class JSC::JSCell *,class JSC::ExecState *)" (?toThisObject@JSGlobalObject@JSC@@KAPAVJSObject@2@PAVJSCell@2@PAVExecState@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static bool __cdecl JSC::JSProxy::getOwnPropertyDescriptor(class JSC::JSObject *,class JSC::ExecState *,class JSC::PropertyName,class JSC::PropertyDescriptor &)" (?getOwnPropertyDescriptor@JSProxy@JSC@@KA_NPAVJSObject@2@PAVExecState@2@VPropertyName@2@AAVPropertyDescriptor@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static bool __cdecl JSC::JSProxy::defineOwnProperty(class JSC::JSObject *,class JSC::ExecState *,class JSC::PropertyName,class JSC::PropertyDescriptor &,bool)" (?defineOwnProperty@JSProxy@JSC@@KA_NPAVJSObject@2@PAVExecState@2@VPropertyName@2@AAVPropertyDescriptor@2@_N@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static void __cdecl JSC::JSProxy::putDirectVirtual(class JSC::JSObject *,class JSC::ExecState *,class JSC::PropertyName,class JSC::JSValue,unsigned int)" (?putDirectVirtual@JSProxy@JSC@@KAXPAVJSObject@2@PAVExecState@2@VPropertyName@2@VJSValue@2@I@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static class WTF::String __cdecl JSC::JSProxy::className(class JSC::JSObject const *)" (?className@JSProxy@JSC@@KA?AVString@WTF@@PBVJSObject@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static void __cdecl JSC::JSProxy::getPropertyNames(class JSC::JSObject *,class JSC::ExecState *,class JSC::PropertyNameArray &,enum JSC::EnumerationMode)" (?getPropertyNames@JSProxy@JSC@@KAXPAVJSObject@2@PAVExecState@2@AAVPropertyNameArray@2@W4EnumerationMode@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static void __cdecl JSC::JSProxy::getOwnPropertyNames(class JSC::JSObject *,class JSC::ExecState *,class JSC::PropertyNameArray &,enum JSC::EnumerationMode)" (?getOwnPropertyNames@JSProxy@JSC@@KAXPAVJSObject@2@PAVExecState@2@AAVPropertyNameArray@2@W4EnumerationMode@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static bool __cdecl JSC::JSProxy::getOwnPropertySlotByIndex(class JSC::JSCell *,class JSC::ExecState *,unsigned int,class JSC::PropertySlot &)" (?getOwnPropertySlotByIndex@JSProxy@JSC@@KA_NPAVJSCell@2@PAVExecState@2@IAAVPropertySlot@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static bool __cdecl JSC::JSProxy::getOwnPropertySlot(class JSC::JSCell *,class JSC::ExecState *,class JSC::PropertyName,class JSC::PropertySlot &)" (?getOwnPropertySlot@JSProxy@JSC@@KA_NPAVJSCell@2@PAVExecState@2@VPropertyName@2@AAVPropertySlot@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static bool __cdecl JSC::JSProxy::deletePropertyByIndex(class JSC::JSCell *,class JSC::ExecState *,unsigned int)" (?deletePropertyByIndex@JSProxy@JSC@@KA_NPAVJSCell@2@PAVExecState@2@I@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static bool __cdecl JSC::JSProxy::deleteProperty(class JSC::JSCell *,class JSC::ExecState *,class JSC::PropertyName)" (?deleteProperty@JSProxy@JSC@@KA_NPAVJSCell@2@PAVExecState@2@VPropertyName@2@@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static void __cdecl JSC::JSProxy::putByIndex(class JSC::JSCell *,class JSC::ExecState *,unsigned int,class JSC::JSValue,bool)" (?putByIndex@JSProxy@JSC@@KAXPAVJSCell@2@PAVExecState@2@IVJSValue@2@_N@Z) 12>WebCore.lib(JSBindingsAllInOne.obj) : error LNK2001: unresolved external symbol "protected: static void __cdecl JSC::JSProxy::put(class JSC::JSCell *,class JSC::ExecState *,class JSC::PropertyName,class JSC::JSValue,class JSC::PutPropertySlot &)" (?put@JSProxy@JSC@@KAXPAVJSCell@2@PAVExecState@2@VPropertyName@2@VJSValue@2@AAVPutPropertySlot@2@@Z) 12>C:\cygwin\home\buildbot\slave\win-debug\build\WebKitBuild\Debug\bin\WebKit.dll : fatal error LNK1120: 13 unresolved externals 12>Build log was saved at "file://C:\cygwin\home\buildbot\slave\win-debug\build\WebKitBuild\Debug\obj\WebKit\BuildLog.htm" 12>WebKit - 15 error(s), 1 warning(s)
Gavin Barraclough
Comment 4 2012-09-26 13:57:38 PDT
Thanks Beth! - Speculative Windows build fix in r129702.
Beth Dakin
Comment 5 2012-09-26 14:09:36 PDT
(In reply to comment #4) > Thanks Beth! - Speculative Windows build fix in r129702. Yay! Looks like this fixed the release build. The Debug build is still busted, but I don't think its your fault since it's failing in RenderTableCell.cpp Thanks, Gavin!
Note You need to log in before you can comment on or make changes to this bug.