CompositeDataSourceImpl doesn't release its observers in its destructor. Somehow we haven't noticed this leak until it showed up on tinderbox last night. (The leak currently on tinderbox involves an nsXPCWrappedJS that's an observer, and which, by staying alive, keeps a bunch of JS objects, including two global objects, alive.) The fix is trivial -- convert to nsCOMArray.
Status: NEW → ASSIGNED
Priority: -- → P2
Target Milestone: --- → mozilla1.4alpha
Comment on attachment 118553 [details] [diff] [review] patch nice! sr=alecf
Attachment #118553 - Flags: superreview?(alecf) → superreview+
Comment on attachment 118553 [details] [diff] [review] patch looks good r=varga
Attachment #118553 - Flags: review?(varga) → review+
Attachment #118553 - Flags: approval1.4a?
This should be pretty low-risk, although there's always the possibility that a leak fix could expose overreleasing somewhere else and lead to crashes. It's also possible that this could fix leaks elsewhere.
Comment on attachment 118553 [details] [diff] [review] patch Should be safe, good to check out via an alpha release. /be
Attachment #118553 - Flags: approval1.4a? → approval1.4a+
*** Bug 199269 has been marked as a duplicate of this bug. ***
Fix checked in to trunk, 2003-03-26 16:01 PST.
Status: ASSIGNED → RESOLVED
Last Resolved: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.