[webkit-dev] ExecState::thisObject()
Geoffrey Garen
ggaren at apple.com
Mon Jul 13 15:36:52 PDT 2009
>> I discussed this a bit with Darin and Geoff, and we came to the
>> conclusion that the correct fix is to have each JS DOMObject store
>> a JSGlobalObject pointer and augment the toJS methods to pass a
>> global object instead of an ExecState (close to you #1). I would
>> not advocate storing more data on the ExecState.
Sam and I just noticed that, to fully support this behavior, any host
object that lazily constructs function properties using the functions
in lookup.h must either
(a) change in the same way as DOM objects must change
or
(b) eagerly construct its function properties with the correct
prototype.
Consider this case, which does not involve a DOM object:
frames[0].Array.prototype.push.__proto__ ==
Array.prototype.push.__proto__
Geoff
More information about the webkit-dev
mailing list