Bug 35226

Summary: Cache JavaScript wrappers inline in DOM nodes
Product: WebKit Reporter: Maciej Stachowiak <mjs>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: gustavo, webkit.review.bot, xan.lopez
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Other   
OS: OS X 10.5   
Attachments:
Description Flags
Patch
none
Patch oliver: review+

Description Maciej Stachowiak 2010-02-21 20:12:48 PST
Cache JavaScript wrappers inline in DOM nodes
Comment 1 Maciej Stachowiak 2010-02-21 20:29:31 PST
Created attachment 49181 [details]
Patch
Comment 2 Darin Adler 2010-02-21 20:34:53 PST
Comment on attachment 49181 [details]
Patch

>  void forgetDOMObject(DOMObject* wrapper, void* objectHandle)
>  {
> +    
>      JSC::JSGlobalData* globalData = Heap::heap(wrapper)->globalData();

No need for this added blank line.

> -    JSNode* getCachedDOMNodeWrapper(JSC::ExecState*, Document*, Node*);
> +    JSNode* getCachedDOMNodeWrapper(JSC::ExecState*, Node*);

This is defined in JSNodeCustom.h instead of this header. Why?

> +    inline DOMObjectWrapperMap& DOMObjectWrapperMapFor(JSC::ExecState* exec)
> +    {
> +        return currentWorld(exec)->m_wrappers;
> +    }

In the past we have lowercased even acronyms like DOM here at the start of a function name. Maybe there's some way to dodge the issue.

r=me
Comment 3 WebKit Review Bot 2010-02-21 20:46:04 PST
Attachment 49181 [details] did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/297608
Comment 4 WebKit Review Bot 2010-02-21 20:49:07 PST
Attachment 49181 [details] did not build on gtk:
Build output: http://webkit-commit-queue.appspot.com/results/298397
Comment 5 Maciej Stachowiak 2010-02-22 01:28:47 PST
Committed r55074: <http://trac.webkit.org/changeset/55074>
Comment 6 Maciej Stachowiak 2010-02-22 02:33:58 PST
Reverted my change; it caused some breakage.
Comment 7 Maciej Stachowiak 2010-02-24 19:21:42 PST
Created attachment 49461 [details]
Patch
Comment 8 Oliver Hunt 2010-02-24 19:31:17 PST
Comment on attachment 49461 [details]
Patch

r=me
Comment 9 WebKit Review Bot 2010-02-24 19:50:41 PST
Attachment 49461 [details] did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/309288
Comment 10 WebKit Review Bot 2010-02-24 19:57:26 PST
Attachment 49461 [details] did not build on gtk:
Build output: http://webkit-commit-queue.appspot.com/results/308324
Comment 11 Maciej Stachowiak 2010-02-24 20:07:56 PST
Committed r55215: <http://trac.webkit.org/changeset/55215>