If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

nsGlobalWindows shouldn't retain objects past xpcom shutdown

NEW
Unassigned

Status

()

Core
DOM
9 years ago
4 years ago

People

(Reporter: timeless, Unassigned)

Tracking

(Depends on: 2 bugs)

Trunk
x86
Windows XP
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

9 years ago
Created attachment 355049 [details] [diff] [review]
release window contents at shutdown before cycle collecting

Currently this isn't really something nsGlobalWindow cares about, but it does happen. It's not much of an issue because we then try to call getservice during xpcom shutdown, which vetos it. w/ my changes, we have the observerservice and then *it* complains.

gklayout!nsGlobalWindow::~nsGlobalWindow
gklayout!nsGlobalChromeWindow::~nsGlobalChromeWindow
gklayout!nsGlobalChromeWindow::`scalar deleting destructor'
gklayout!nsGlobalWindow::Release
gklayout!nsGlobalChromeWindow::Release
xpcom_core!nsXPCOMCycleCollectionParticipant::Unroot
xpcom_core!nsCycleCollector::CollectWhite
xpcom_core!nsCycleCollector::FinishCollection
xpcom_core!nsCycleCollector_finishCollection
xpc3250!XPCCycleCollectGCCallback
js3250!js_GC
js3250!JS_GC
xpc3250!nsXPConnect::Collect
xpcom_core!nsCycleCollector::Collect
xpcom_core!nsCycleCollector::Shutdown
xpcom_core!nsCycleCollector_shutdown
xpcom_core!NS_ShutdownXPCOM_P
xul!ScopedXPCOMStartup::~ScopedXPCOMStartup
xul!XRE_main

with these changes, the objects are essentially empty shells.

i'm testing w/ thunderbird(against mozilla-central) just running thunderbird -no-remote -P and canceling the profile manager.
Attachment #355049 - Flags: review?(jst)
Comment on attachment 355049 [details] [diff] [review]
release window contents at shutdown before cycle collecting

Clearing out old reviews. If this is still relevant, please re-request review for this patch.
Attachment #355049 - Flags: review?(jst)
You need to log in before you can comment on or make changes to this bug.