I noticed that running some browser-chrome tests alone reports memory leaks. I investigated this, and with the help of the folks on #jsapi, now I know the cause. We have _windowsToClose as a prototype property, and here we assign to it: <http://mxr.mozilla.org/mozilla-central/source/browser/components/privatebrowsing/src/nsPrivateBrowsingService.js#551>. This assignment actually affects the instance, not the prototype, which causes the original array on the prototype to coexist with the new array. The fix is simple, we should just have _windowsToClose as an instance variable.
Created attachment 489577 [details] [diff] [review] Patch (v1)
OS: Mac OS X → All
Hardware: x86 → All
Status: ASSIGNED → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
Whiteboard: [needs landing]
Target Milestone: --- → Firefox 4.0b8
We should take this on branches as well.
blocking1.9.1: --- → ?
blocking1.9.2: --- → ?
Not a branch blocker but seems good to take.
blocking1.9.1: ? → -
blocking1.9.2: ? → -
status1.9.1: --- → wanted
status1.9.2: --- → wanted
Comment on attachment 489577 [details] [diff] [review] Patch (v1) Approved for 126.96.36.199 and 188.8.131.52, a=dveditz for release-drivers
status1.9.1: wanted → .16-fixed
status1.9.2: wanted → .13-fixed
You need to log in before you can comment on or make changes to this bug.