Closed Bug 343083 Opened 19 years ago Closed 19 years ago

Copying a bookmark leaks an nsIRDFResource on shutdown

Categories

(Firefox :: Bookmarks & History, defect)

2.0 Branch
x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: ispiked, Unassigned)

Details

(Keywords: memory-leak)

Found with Leak Monitor using current branch build. Steps to reproduce: 1. Right click > Copy a bookmark on the bookmarks toolbar. 2. Right click > Paste on the bookmarks toolbar. 3. Close the browser. Results: Leak monitor reports that an object was leaked. Expected results: No leak. (Duh.) I didn't check and see if Joey's patch in bug 168411 regressed this. LeakReport (new leaks): Leaks in window 0x8c05a78: [+] [leaked object] (9458178) = [xpconnect wrapped nsIRDFResource],[xpconnect wrapped nsIRDFLiteral],[xpconnect wrapped nsIRDFLiteral],,,, [+] 0 (9458168) = [xpconnect wrapped nsIRDFResource] [ ] Value = rdf:#$N+Zcc1 [+] QueryInterface (8b2d498) = function QueryInterface() { [native code] } [ ] prototype (8c040a0) = [object Object] [+] EqualsNode (8b2d4b8) = function EqualsNode() { [native code] } [ ] prototype (8c040b0) = [object Object] [ ] ValueUTF8 = rdf:#$N+Zcc1 [+] Init (8b2da18) = function Init() { [native code] } [ ] prototype (8c04108) = [object Object] [+] EqualsString (8b2da50) = function EqualsString() { [native code] } [ ] prototype (8c04118) = [object Object] [+] GetDelegate (8b2da90) = function GetDelegate() { [native code] } [ ] prototype (8c04140) = [object Object] [+] ReleaseDelegate (8b2dc58) = function ReleaseDelegate() { [native code] } [ ] prototype (8c04170) = [object Object] [+] 1 (9458180) = [xpconnect wrapped nsIRDFLiteral] [+] QueryInterface (8c04178) = function QueryInterface() { [native code] } [ ] prototype (8c041e0) = [object Object] [+] EqualsNode (8c041c0) = function EqualsNode() { [native code] } [ ] prototype (8c041f8) = [object Object] [ ] Value = Getting Started [+] 2 (9458188) = [xpconnect wrapped nsIRDFLiteral] [+] QueryInterface (8c04228) = function QueryInterface() { [native code] } [ ] prototype (8c04240) = [object Object] [+] EqualsNode (8c04230) = function EqualsNode() { [native code] } [ ] prototype (8c04248) = [object Object] [ ] Value = http://www.mozilla.com/products/firefox/central.html [ ] 3 = null [ ] 4 = null [ ] 5 = null [ ] 6 = null
As I understand it, we need to keep these nodes/resources around for the life of the app for the purposes of undo/redo. My bug dealt with the fact that we also happened to keep the bookmarks window around too. Or am I misunderstanding what's going on here?
Fixed by Joey's patch in bug 342110. -> FIXED
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.