GC not collecting last 2 DOMWindows after closing last browser window

NEW
Unassigned

Status

()

Core
DOM
8 years ago
8 years ago

People

(Reporter: romaxa, Unassigned)

Tracking

1.9.2 Branch
Other
Linux
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

8 years ago
Created attachment 405025 [details] [diff] [review]
Reproduce problem patch against latest mozilla-1.9.2 release

STEPS:
Take latest mozilla-1.9.2 branch
Apply patch from attachment (enabled debugging of nsGlobalWindow + disabled gtk_main_quit on closing last window in TestGtkEmbed)

./run-mozilla.sh ./TestGtkEmbed ya.ru
Close browser window and wait for some time (10-15 seconds)

ACTUAL:
************
delete_cb
destroy_cb
--DOMWINDOW == 4 (0x84dad80) [serial = 2] [outer = 0x84e3870] [url = about:blank]
--DOMWINDOW == 3 (0x86acec8) [serial = 4] [outer = (nil)] [url = about:blank]
--DOMWINDOW == 2 (0x8728c80) [serial = 5] [outer = (nil)] [url = about:blank]
************

EXPECTED:
************
load_finished_cb
delete_cb
destroy_cb
--DOMWINDOW == 1 (0x8f68d40) [serial = 3] [outer = 0x8e619c0] [url = http://ya.ru/]
--DOMWINDOW == 0 (0x8e619f0) [serial = 1] [outer = (nil)] [url = http://ya.ru/]
************


Problem was introduced in 
http://hg.mozilla.org/mozilla-central/rev/a565fa8f3583
Bug 456721 - Control GC frequency/a high water mark of Tracemonkey via about:config;

Also preference
pref("javascript.options.mem.high_water_mark", 0);
help to get EXPECTED result.
(Reporter)

Comment 1

8 years ago
Comment on attachment 405025 [details] [diff] [review]
Reproduce problem patch against latest mozilla-1.9.2 release

Im microb browser we are destroying XPCOM only after closing all browser windows.
If all pages windows are closed but bookmark view still visible then we are not destroying XPCOM.
Attachment #405025 - Attachment description: Patch against latest mozilla-1.9.2 release → Reproduce problem patch against latest mozilla-1.9.2 release
You need to log in before you can comment on or make changes to this bug.