Closed Bug 739810 Opened 8 years ago Closed 8 years ago

Cycle collector should traverse nsGlobalWindow::mLocalStorage

Categories

(Core :: XPCOM, defect)

x86_64
Linux
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla14

People

(Reporter: billm, Assigned: billm)

Details

Attachments

(1 file, 1 obsolete file)

Attached patch patch (obsolete) — Splinter 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.
Attachment #609921 - Flags: review?(bugs)
Comment on attachment 609921 [details] [diff] [review]
patch

You should also unlink localStorage.
Attachment #609921 - Flags: review?(bugs) → review-
Attached patch patch v2Splinter Review
Thanks, fixed.
Attachment #609921 - Attachment is obsolete: true
Attachment #609922 - Flags: review?(bugs)
Attachment #609922 - Flags: review?(bugs) → review+
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).
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.
https://hg.mozilla.org/integration/mozilla-inbound/rev/d41b23cd2359

Even with this patch, a single cycle collection rarely cleans up everything. We still have a ways to go on that.
Target Milestone: --- → mozilla14
https://hg.mozilla.org/mozilla-central/rev/d41b23cd2359
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.