From 6c2fa78c9dba419cb2b23a5e1d4ade541f3cfc95 Mon Sep 17 00:00:00 2001 From: "beard%netscape.com" Date: Sun, 14 Mar 1999 04:41:51 +0000 Subject: [PATCH] added nsILiveconnect service. git-svn-id: svn://10.0.0.236/trunk@24101 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/modules/plugin/bad/badapter.cpp | 16 +++++++++++++++- .../modules/plugin/samples/backward/badapter.cpp | 16 +++++++++++++++- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/mozilla/modules/plugin/bad/badapter.cpp b/mozilla/modules/plugin/bad/badapter.cpp index 80fe9303106..bfe5edff17d 100644 --- a/mozilla/modules/plugin/bad/badapter.cpp +++ b/mozilla/modules/plugin/bad/badapter.cpp @@ -32,6 +32,7 @@ #include "nsIPluginManager.h" #include "nsIServiceManager.h" #include "nsIAllocator.h" +#include "nsLiveConnect.h" #include "nsplugin.h" #include "nsDebug.h" @@ -181,6 +182,9 @@ public: */ NS_IMETHOD HeapMinimize(void); + +private: + nsILiveconnect* mLiveconnect; }; //////////////////////////////////////////////////////////////////////////////// @@ -1060,14 +1064,17 @@ NPP_HandleEvent(NPP instance, void* event) // //****************************************************************************** -CPluginManager::CPluginManager(void) +CPluginManager::CPluginManager(void) { // Set reference count to 0. NS_INIT_REFCNT(); + + mLiveconnect = NULL; } CPluginManager::~CPluginManager(void) { + NS_IF_RELEASE(mLiveconnect); } //+++++++++++++++++++++++++++++++++++++++++++++++++ @@ -1184,6 +1191,13 @@ CPluginManager::GetService(const nsCID& aClass, const nsIID& aIID, if (aClass.Equals(kPluginManagerCID) || aClass.Equals(kAllocatorCID)) { return QueryInterface(aIID, (void**) result); } + if (aClass.Equals(nsILiveconnect::GetCID())) { + if (mLiveconnect == NULL) { + mLiveconnect = new nsLiveconnect; + NS_IF_ADDREF(mLiveconnect); + } + return mLiveconnect->QueryInterface(aIID, result); + } return NS_ERROR_SERVICE_NOT_FOUND; } diff --git a/mozilla/modules/plugin/samples/backward/badapter.cpp b/mozilla/modules/plugin/samples/backward/badapter.cpp index 80fe9303106..bfe5edff17d 100644 --- a/mozilla/modules/plugin/samples/backward/badapter.cpp +++ b/mozilla/modules/plugin/samples/backward/badapter.cpp @@ -32,6 +32,7 @@ #include "nsIPluginManager.h" #include "nsIServiceManager.h" #include "nsIAllocator.h" +#include "nsLiveConnect.h" #include "nsplugin.h" #include "nsDebug.h" @@ -181,6 +182,9 @@ public: */ NS_IMETHOD HeapMinimize(void); + +private: + nsILiveconnect* mLiveconnect; }; //////////////////////////////////////////////////////////////////////////////// @@ -1060,14 +1064,17 @@ NPP_HandleEvent(NPP instance, void* event) // //****************************************************************************** -CPluginManager::CPluginManager(void) +CPluginManager::CPluginManager(void) { // Set reference count to 0. NS_INIT_REFCNT(); + + mLiveconnect = NULL; } CPluginManager::~CPluginManager(void) { + NS_IF_RELEASE(mLiveconnect); } //+++++++++++++++++++++++++++++++++++++++++++++++++ @@ -1184,6 +1191,13 @@ CPluginManager::GetService(const nsCID& aClass, const nsIID& aIID, if (aClass.Equals(kPluginManagerCID) || aClass.Equals(kAllocatorCID)) { return QueryInterface(aIID, (void**) result); } + if (aClass.Equals(nsILiveconnect::GetCID())) { + if (mLiveconnect == NULL) { + mLiveconnect = new nsLiveconnect; + NS_IF_ADDREF(mLiveconnect); + } + return mLiveconnect->QueryInterface(aIID, result); + } return NS_ERROR_SERVICE_NOT_FOUND; }