Closed Bug 48066 Opened 25 years ago Closed 25 years ago

closed windows are not closed completely, just hidden

Categories

(SeaMonkey :: General, defect, P3)

x86
Windows 2000
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: sean, Assigned: danm.moz)

Details

(Keywords: memory-leak)

Use the Spy++ tool that comes with VC++. 1. Start up mozilla and load any html page. 2. Open a new window and open another html page. 3. Start Spy++ and locate the two windows in the window list. 4. Close the second browser window. 5. Refresh the spy list. The second browser window is still alive but it is hidden - it has a hidden child window of window class "Edit". The "NetscapeWindowClass" child has been destroyed. This happens for every browser window opened. After surfing for awhile, although you might have only one window open, going into Spy will show the windows and titles of the pages you've been to when you used a new window.
adding mlk keyword nominating nsbeta3
Keywords: mlk, nsbeta3
trudelle, who would get this. jrgm, can you reproduce with latest trunk.
Assignee: asa → trudelle
QA Contact: doronr → jrgm
->danm. Is this happening only on Win2K?
Assignee: trudelle → danm
No - I saw this happening at home on NT4 also.
Yes, Spy++ sez a window of class Edit and its parent are being leaked when a browser window is closed.
Is that a real leak, or are we just delaying destruction to avoid some deref after close?
Whiteboard: [need info]
Looks like the culprit is a missing release of the main frame: Index: nsUrlWidget.cpp =================================================================== RCS file: /cvsroot/mozilla/xpfe/components/urlwidget/nsUrlWidget.cpp,v retrieving revision 1.1 diff -u -r1.1 nsUrlWidget.cpp --- nsUrlWidget.cpp 2000/06/23 00:31:24 1.1 +++ nsUrlWidget.cpp 2000/08/11 00:31:03 @@ -92,6 +92,7 @@ nsIWidget* ppWidget; ppBaseWindow->GetMainWidget(&ppWidget); hMainFrame = (HWND)ppWidget->GetNativeData(NS_NATIVE_WIDGET); + NS_IF_RELEASE(ppWidget); } if (!hMainFrame)
Keywords: patch
removing [need info] from status whiteboard - this is a leak fixed by the patch in the last post
Whiteboard: [need info]
Thanks, Sean, nice catch! I checked in your fix, though I took the liberty of nsCOMPtrizing it to match the rest of the function. Hope you don't mind. Leak's gone; things are happier.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Target Milestone: --- → M18
vrfy - thanks!
Status: RESOLVED → VERIFIED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.