Last Comment Bug 739810 - Cycle collector should traverse nsGlobalWindow::mLocalStorage
: Cycle collector should traverse nsGlobalWindow::mLocalStorage
Product: Core
Classification: Components
Component: XPCOM (show other bugs)
: unspecified
: x86_64 Linux
-- normal (vote)
: mozilla14
Assigned To: Bill McCloskey (:billm)
: Nathan Froyd [:froydnj]
Depends on:
  Show dependency treegraph
Reported: 2012-03-27 15:37 PDT by Bill McCloskey (:billm)
Modified: 2012-04-06 11:42 PDT (History)
5 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

patch (1.05 KB, patch)
2012-03-27 15:37 PDT, Bill McCloskey (:billm)
bugs: review-
Details | Diff | Splinter Review
patch v2 (1.89 KB, patch)
2012-03-27 15:41 PDT, Bill McCloskey (:billm)
bugs: review+
Details | Diff | Splinter Review

Description User image Bill McCloskey (:billm) 2012-03-27 15:37:20 PDT
Created attachment 609921 [details] [diff] [review]

Given that we traverse mSessionStorage, it seems like we should traverse mLocalStorage as well.

Also, with this patch, if I open and then immediately close the browser, all objects get cleaned up in one cycle collection. Without the patch, it takes two CCs.
Comment 1 User image Olli Pettay [:smaug] (pto-ish for couple of days) 2012-03-27 15:39:32 PDT
Comment on attachment 609921 [details] [diff] [review]

You should also unlink localStorage.
Comment 2 User image Bill McCloskey (:billm) 2012-03-27 15:41:19 PDT
Created attachment 609922 [details] [diff] [review]
patch v2

Thanks, fixed.
Comment 3 User image Andrew McCreight [:mccr8] 2012-03-29 10:11:26 PDT
Justin, this patch seems to fix at least some problems with shutdown CCs taking multiple cycles, so I'm wondering if it will fix some of the problems you saw with windows not getting killed quickly (which is why I was wondering what the bug number was so I can make this block that).
Comment 4 User image Justin Lebar (not reading bugmail) 2012-03-29 10:37:56 PDT
See bug 731419 comment 7.  Those comments don't really belong in that bug...

Let me know if you need me to do any testing.
Comment 5 User image Bill McCloskey (:billm) 2012-04-05 15:48:44 PDT

Even with this patch, a single cycle collection rarely cleans up everything. We still have a ways to go on that.
Comment 6 User image Matt Brubeck (:mbrubeck) 2012-04-06 11:42:53 PDT

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