Last Comment Bug 648943 - Make .childNodes actually use the wrapper cache
: Make .childNodes actually use the wrapper cache
Status: RESOLVED FIXED
: perf
Product: Core
Classification: Components
Component: XPConnect (show other bugs)
: Trunk
: x86 Mac OS X
: P1 normal (vote)
: mozilla5
Assigned To: Boris Zbarsky [:bz] (Out June 25-July 6)
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-04-10 21:18 PDT by Boris Zbarsky [:bz] (Out June 25-July 6)
Modified: 2011-04-12 02:42 PDT (History)
2 users (show)
bzbarsky: in‑testsuite-
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Use the wrapper cache for childNodes in quickstubs. (6.36 KB, patch)
2011-04-10 21:42 PDT, Boris Zbarsky [:bz] (Out June 25-July 6)
no flags Details | Diff | Review
The actual fix (1.08 KB, patch)
2011-04-10 21:45 PDT, Boris Zbarsky [:bz] (Out June 25-July 6)
peterv: review+
Details | Diff | Review

Description Boris Zbarsky [:bz] (Out June 25-July 6) 2011-04-10 21:18:57 PDT
Right now the code in quickstubs ends up not using it, because it's using nsIDOMNodeList, which does not inherit from nsWrapperCache.  But the actual type used by .childNodes does inherit from nsWrapperCache!
Comment 1 Boris Zbarsky [:bz] (Out June 25-July 6) 2011-04-10 21:42:44 PDT
Created attachment 525032 [details] [diff] [review]
Use the wrapper cache for childNodes in quickstubs.
Comment 2 Boris Zbarsky [:bz] (Out June 25-July 6) 2011-04-10 21:45:27 PDT
Created attachment 525033 [details] [diff] [review]
The actual fix
Comment 3 Peter Van der Beken [:peterv] 2011-04-11 09:45:06 PDT
Comment on attachment 525033 [details] [diff] [review]
The actual fix

Just to be clear, we are using the wrapper cache but through a slower path (if we don't get it through a cast we QI at some point).
Comment 4 Boris Zbarsky [:bz] (Out June 25-July 6) 2011-04-12 02:42:48 PDT
Pushed http://hg.mozilla.org/mozilla-central/rev/8a1136b1b624

Note You need to log in before you can comment on or make changes to this bug.