Bug 350550 - Liveconnect shouldn't export NSGetFactory, r=brendan+jhpedemonte

git-svn-id: svn://10.0.0.236/trunk@208905 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
benjamin%smedbergs.us
2006-08-31 16:45:29 +00:00
parent 0f1dd5282d
commit 4b274ca925

View File

@@ -54,40 +54,8 @@
#include "nsIComponentManager.h"
#include "nsIComponentRegistrar.h"
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIFactoryIID, NS_IFACTORY_IID);
static NS_DEFINE_CID(kCLiveconnectCID, NS_CLIVECONNECT_CID);
/*+++++++++++++++++++++++++++++++++++++++++++++++++
* NSGetFactory:
* Provides entry point to liveconnect dll.
+++++++++++++++++++++++++++++++++++++++++++++++++*/
extern "C" NS_EXPORT nsresult
NSGetFactory(nsISupports* serviceMgr,
const nsCID &aClass,
const char *aClassName,
const char *aContractID,
nsIFactory **aFactory)
{
if (!aClass.Equals(kCLiveconnectCID)) {
return NS_ERROR_FACTORY_NOT_LOADED; // XXX right error?
}
nsCLiveconnectFactory* factory = new nsCLiveconnectFactory();
if (factory == NULL)
return NS_ERROR_OUT_OF_MEMORY;
factory->AddRef();
*aFactory = factory;
return NS_OK;
}
extern "C" NS_EXPORT PRBool
NSCanUnload(nsISupports* serviceMgr)
{
return PR_FALSE;
}
extern "C" NS_EXPORT nsresult
JSJ_RegisterLiveConnectFactory()
{
@@ -105,27 +73,7 @@ JSJ_RegisterLiveConnectFactory()
return NS_ERROR_OUT_OF_MEMORY;
}
////////////////////////////////////////////////////////////////////////////
// from nsISupports
NS_METHOD
nsCLiveconnectFactory::QueryInterface(const nsIID& aIID, void** aInstancePtr)
{
PR_ASSERT(NULL != aInstancePtr);
if (NULL == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIFactoryIID) ||
aIID.Equals(kISupportsIID)) {
*aInstancePtr = (void*) this;
AddRef();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ADDREF(nsCLiveconnectFactory)
NS_IMPL_RELEASE(nsCLiveconnectFactory)
NS_IMPL_ISUPPORTS1(nsCLiveconnectFactory, nsIFactory)
////////////////////////////////////////////////////////////////////////////
// from nsIFactory:
@@ -138,7 +86,7 @@ nsCLiveconnectFactory::CreateInstance(nsISupports *aOuter, REFNSIID aIID, void *
*aResult = NULL;
NS_ENSURE_PROPER_AGGREGATION(aOuter, kISupportsIID);
NS_ENSURE_PROPER_AGGREGATION(aOuter, aIID);
nsCLiveconnect* liveconnect = new nsCLiveconnect(aOuter);
if (liveconnect == NULL)