From db81021377bc44bee7e7255f89cb40f030d01b49 Mon Sep 17 00:00:00 2001 From: "bzbarsky%mit.edu" Date: Thu, 29 Jun 2006 04:30:51 +0000 Subject: [PATCH] Backing out attempted fix for bug 341592, since it didn't fix it, apparently, and caused bug 341700. git-svn-id: svn://10.0.0.236/trunk@201201 18797224-902f-48f8-a5cc-f745e15eee43 --- .../dom/src/base/nsDOMScriptObjectFactory.cpp | 23 +++++++------------ 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/mozilla/dom/src/base/nsDOMScriptObjectFactory.cpp b/mozilla/dom/src/base/nsDOMScriptObjectFactory.cpp index 431b1519620..809e296479f 100644 --- a/mozilla/dom/src/base/nsDOMScriptObjectFactory.cpp +++ b/mozilla/dom/src/base/nsDOMScriptObjectFactory.cpp @@ -94,17 +94,6 @@ nsDOMScriptObjectFactory::nsDOMScriptObjectFactory() : NS_CreateJSRuntime(getter_AddRefs(mLanguageArray[NS_STID_INDEX(nsIProgrammingLanguage::JAVASCRIPT)])); } -nsDOMScriptObjectFactory::~nsDOMScriptObjectFactory() -{ - PRUint32 i; - NS_STID_FOR_INDEX(i) { - if (mLanguageArray[i] != nsnull) { - mLanguageArray[i]->ShutDown(); - mLanguageArray[i] = nsnull; - } - } -} - NS_INTERFACE_MAP_BEGIN(nsDOMScriptObjectFactory) NS_INTERFACE_MAP_ENTRY(nsIDOMScriptObjectFactory) NS_INTERFACE_MAP_ENTRY(nsIObserver) @@ -296,6 +285,14 @@ nsDOMScriptObjectFactory::Observe(nsISupports *aSubject, nsGlobalWindow::ShutDown(); nsDOMClassInfo::ShutDown(); + PRUint32 i; + NS_STID_FOR_INDEX(i) { + if (mLanguageArray[i] != nsnull) { + mLanguageArray[i]->ShutDown(); + mLanguageArray[i] = nsnull; + } + } + nsCOMPtr xs = do_GetService(NS_EXCEPTIONSERVICE_CONTRACTID); @@ -308,10 +305,6 @@ nsDOMScriptObjectFactory::Observe(nsISupports *aSubject, xs->UnregisterExceptionProvider(this, NS_ERROR_MODULE_DOM_XPATH); xs->UnregisterExceptionProvider(this, NS_ERROR_MODULE_XPCONNECT); } - // Note that we do *not* cleanup the script language references held - // in the nsDOMScriptObjectFactory service - they may be required - // after this is called, as other things shut down and release their - // script object references. } return NS_OK;