mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-04 11:26:09 +00:00
Bug 848036 - Move poisoning after NS_XPCOM_SHUTDOWN_LOADERS_OBSERVER_ID. r=BenWa.
--HG-- extra : rebase_source : 06f7625a901f1b69b5850ae76c9ff24e99081173
This commit is contained in:
parent
e67ae46cb3
commit
ffdd877205
@ -588,10 +588,6 @@ ShutdownXPCOM(nsIServiceManager* servMgr)
|
||||
// We save the "xpcom-shutdown-loaders" observers to notify after
|
||||
// the observerservice is gone.
|
||||
if (observerService) {
|
||||
// FIXME: This can cause harmless writes from sqlite committing
|
||||
// log files. We have to ignore them before we can move
|
||||
// the mozilla::PoisonWrite call before this point. See bug
|
||||
// 834945 for the details.
|
||||
observerService->
|
||||
EnumerateObservers(NS_XPCOM_SHUTDOWN_LOADERS_OBSERVER_ID,
|
||||
getter_AddRefs(moduleLoaders));
|
||||
@ -625,12 +621,6 @@ ShutdownXPCOM(nsIServiceManager* servMgr)
|
||||
// Release the directory service
|
||||
NS_IF_RELEASE(nsDirectoryService::gService);
|
||||
|
||||
SAMPLE_MARKER("Shutdown xpcom");
|
||||
// If we are doing any shutdown checks, poison writes.
|
||||
if (gShutdownChecks != SCM_NOTHING) {
|
||||
mozilla::PoisonWrite();
|
||||
}
|
||||
|
||||
nsCycleCollector_shutdown();
|
||||
|
||||
if (moduleLoaders) {
|
||||
@ -644,6 +634,10 @@ ShutdownXPCOM(nsIServiceManager* servMgr)
|
||||
// no reason for weak-ref observers to register for
|
||||
// xpcom-shutdown-loaders
|
||||
|
||||
// FIXME: This can cause harmless writes from sqlite committing
|
||||
// log files. We have to ignore them before we can move
|
||||
// the mozilla::PoisonWrite call before this point. See bug
|
||||
// 834945 for the details.
|
||||
nsCOMPtr<nsIObserver> obs(do_QueryInterface(el));
|
||||
if (obs)
|
||||
(void) obs->Observe(nullptr,
|
||||
@ -654,6 +648,12 @@ ShutdownXPCOM(nsIServiceManager* servMgr)
|
||||
moduleLoaders = nullptr;
|
||||
}
|
||||
|
||||
SAMPLE_MARKER("Shutdown xpcom");
|
||||
// If we are doing any shutdown checks, poison writes.
|
||||
if (gShutdownChecks != SCM_NOTHING) {
|
||||
mozilla::PoisonWrite();
|
||||
}
|
||||
|
||||
// Shutdown nsLocalFile string conversion
|
||||
NS_ShutdownLocalFile();
|
||||
#ifdef XP_UNIX
|
||||
|
Loading…
Reference in New Issue
Block a user