From ff63394ad35a10a47211b0edf424c25751c1da08 Mon Sep 17 00:00:00 2001 From: "michaelp%netscape.com" Date: Sun, 27 Sep 1998 22:14:15 +0000 Subject: [PATCH] now properly handles queries for nsIFactory. git-svn-id: svn://10.0.0.236/trunk@11182 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/modules/plugin/base/src/ns4xPlugin.cpp | 8 ++++++++ mozilla/modules/plugin/nglsrc/ns4xPlugin.cpp | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/mozilla/modules/plugin/base/src/ns4xPlugin.cpp b/mozilla/modules/plugin/base/src/ns4xPlugin.cpp index a4796141d85..631bc2eb122 100644 --- a/mozilla/modules/plugin/base/src/ns4xPlugin.cpp +++ b/mozilla/modules/plugin/base/src/ns4xPlugin.cpp @@ -96,6 +96,7 @@ NS_IMPL_RELEASE(ns4xPlugin); static NS_DEFINE_IID(kILiveConnectPluginIID, NS_ILIVECONNECTPLUGIN_IID); static NS_DEFINE_IID(kIPluginIID, NS_IPLUGIN_IID); +static NS_DEFINE_IID(kIFactoryIID, NS_IFACTORY_IID); static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID); static NS_DEFINE_IID(kIWindowlessPluginInstancePeerIID, NS_IWINDOWLESSPLUGININSTANCEPEER_IID); static NS_DEFINE_IID(kISeekablePluginStreamPeerIID, NS_ISEEKABLEPLUGINSTREAMPEER_IID); @@ -125,6 +126,13 @@ ns4xPlugin::QueryInterface(const nsIID& iid, void** instance) return NS_OK; } + if (iid.Equals(kIFactoryIID)) + { + *instance = (void *)(nsIFactory *)this; + AddRef(); + return NS_OK; + } + if (iid.Equals(kISupportsIID)) { *instance = (void *)(nsISupports *)this; diff --git a/mozilla/modules/plugin/nglsrc/ns4xPlugin.cpp b/mozilla/modules/plugin/nglsrc/ns4xPlugin.cpp index a4796141d85..631bc2eb122 100644 --- a/mozilla/modules/plugin/nglsrc/ns4xPlugin.cpp +++ b/mozilla/modules/plugin/nglsrc/ns4xPlugin.cpp @@ -96,6 +96,7 @@ NS_IMPL_RELEASE(ns4xPlugin); static NS_DEFINE_IID(kILiveConnectPluginIID, NS_ILIVECONNECTPLUGIN_IID); static NS_DEFINE_IID(kIPluginIID, NS_IPLUGIN_IID); +static NS_DEFINE_IID(kIFactoryIID, NS_IFACTORY_IID); static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID); static NS_DEFINE_IID(kIWindowlessPluginInstancePeerIID, NS_IWINDOWLESSPLUGININSTANCEPEER_IID); static NS_DEFINE_IID(kISeekablePluginStreamPeerIID, NS_ISEEKABLEPLUGINSTREAMPEER_IID); @@ -125,6 +126,13 @@ ns4xPlugin::QueryInterface(const nsIID& iid, void** instance) return NS_OK; } + if (iid.Equals(kIFactoryIID)) + { + *instance = (void *)(nsIFactory *)this; + AddRef(); + return NS_OK; + } + if (iid.Equals(kISupportsIID)) { *instance = (void *)(nsISupports *)this;