From 9b9dc6b8cb772f3579836cf81e0815d0f05154f1 Mon Sep 17 00:00:00 2001 From: "timeless%mac.com" Date: Fri, 31 May 2002 05:14:00 +0000 Subject: [PATCH] Bug 107485 nsPluginHostImpl's shutdown listener should be a weak reference patch by adu@sparc.spb.su r=dougt sr=darin git-svn-id: svn://10.0.0.236/trunk@122406 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/modules/plugin/base/src/nsPluginHostImpl.cpp | 6 +++--- mozilla/modules/plugin/base/src/nsPluginHostImpl.h | 4 +++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/mozilla/modules/plugin/base/src/nsPluginHostImpl.cpp b/mozilla/modules/plugin/base/src/nsPluginHostImpl.cpp index fb7a63ceb0c..2e10962f8db 100644 --- a/mozilla/modules/plugin/base/src/nsPluginHostImpl.cpp +++ b/mozilla/modules/plugin/base/src/nsPluginHostImpl.cpp @@ -1681,7 +1681,7 @@ nsPluginCacheListener::~nsPluginCacheListener() //////////////////////////////////////////////////////////////////////// -NS_IMPL_ISUPPORTS1(nsPluginCacheListener, nsIStreamListener) +NS_IMPL_ISUPPORTS2(nsPluginCacheListener, nsIStreamListener, nsISupportsWeakReference) //////////////////////////////////////////////////////////////////////// NS_IMETHODIMP nsPluginCacheListener::OnStartRequest(nsIRequest *request, nsISupports* ctxt) @@ -2604,8 +2604,8 @@ nsPluginHostImpl::nsPluginHostImpl() nsCOMPtr obsService = do_GetService("@mozilla.org/observer-service;1"); if (obsService) { - obsService->AddObserver(this, "quit-application", PR_FALSE); - obsService->AddObserver(this, NS_XPCOM_SHUTDOWN_OBSERVER_ID, PR_FALSE); + obsService->AddObserver(this, "quit-application", PR_TRUE); + obsService->AddObserver(this, NS_XPCOM_SHUTDOWN_OBSERVER_ID, PR_TRUE); } #ifdef PLUGIN_LOGGING diff --git a/mozilla/modules/plugin/base/src/nsPluginHostImpl.h b/mozilla/modules/plugin/base/src/nsPluginHostImpl.h index 96687a86ea7..0d7991ea9b3 100644 --- a/mozilla/modules/plugin/base/src/nsPluginHostImpl.h +++ b/mozilla/modules/plugin/base/src/nsPluginHostImpl.h @@ -51,6 +51,7 @@ #include "nsPluginsDir.h" #include "nsVoidArray.h" // array for holding "active" streams #include "nsIDirectoryService.h" +#include "nsWeakReference.h" #include "nsWeakPtr.h" class ns4xPlugin; @@ -177,7 +178,8 @@ class nsPluginHostImpl : public nsIPluginManager2, public nsIFileUtilities, public nsICookieStorage, public nsIObserver, - public nsPIPluginHost + public nsPIPluginHost, + public nsSupportsWeakReference { public: nsPluginHostImpl();