Part of 46490 fix, r=adamlock

This commit is contained in:
av%netscape.com 2000-08-17 19:26:15 +00:00
parent e8232b8209
commit 8439416960
2 changed files with 62 additions and 54 deletions

View File

@ -1407,8 +1407,8 @@ NS_IMETHODIMP nsPluginHostImpl::GetValue(nsPluginManagerVariable aVariable, void
nsresult nsPluginHostImpl::ReloadPlugins(PRBool reloadPages)
{
// XXX don't we want to nuke the old mPlugins right now?
// XXX for new-style plugins, we should also call
// nsIComponentManager::AutoRegister()
// we should. Otherwise LoadPlugins will add the same plugins to the list
// XXX for new-style plugins, we should also call nsIComponentManager::AutoRegister()
mPluginsLoaded = PR_FALSE;
return LoadPlugins();
}
@ -1870,7 +1870,7 @@ NS_IMETHODIMP nsPluginHostImpl::InstantiateEmbededPlugin(const char *aMimeType,
}
#ifdef NS_DEBUG
if(!aMimeType)
if(aMimeType)
printf("InstantiateEmbededPlugin for %s\n",aMimeType);
#endif
@ -2318,7 +2318,6 @@ nsPluginHostImpl::IsPluginEnabledForType(const char* aMimeType)
nsPluginTag *plugins = nsnull;
PRInt32 variants, cnt;
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
// if we have a mimetype passed in, search the mPlugins linked
@ -2379,7 +2378,6 @@ nsPluginHostImpl::IsPluginEnabledForExtension(const char* aExtension,
nsPluginTag *plugins = nsnull;
PRInt32 variants, cnt;
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
// if we have a mimetype passed in, search the mPlugins linked
@ -2524,7 +2522,6 @@ NS_IMPL_ISUPPORTS(DOMPluginImpl, nsIDOMPlugin::GetIID());
NS_IMETHODIMP
nsPluginHostImpl::GetPluginCount(PRUint32* aPluginCount)
{
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
PRUint32 count = 0;
@ -2544,7 +2541,6 @@ NS_IMETHODIMP
nsPluginHostImpl::GetPlugins(PRUint32 aPluginCount,
nsIDOMPlugin* aPluginArray[])
{
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
nsPluginTag* plugin = mPlugins;
@ -2567,7 +2563,6 @@ nsPluginHostImpl::FindPluginEnabledForType(const char* aMimeType,
aPlugin = nsnull;
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
// if we have a mimetype passed in, search the mPlugins
@ -2604,7 +2599,6 @@ NS_IMETHODIMP nsPluginHostImpl::GetPluginFactory(const char *aMimeType, nsIPlugi
return NS_ERROR_ILLEGAL_VALUE;
// If plugins haven't been scanned yet, do so now
if (mPlugins == nsnull)
LoadPlugins();
nsPluginTag* pluginTag;
@ -2677,6 +2671,11 @@ NS_IMETHODIMP nsPluginHostImpl::GetPluginFactory(const char *aMimeType, nsIPlugi
NS_IMETHODIMP nsPluginHostImpl::LoadPlugins()
{
// do not do anything if it is already done
// use nsPluginHostImpl::ReloadPlugins to enforce loading
if(mPluginsLoaded)
return NS_OK;
// retrieve a path for layout module. Needed for plugin mime types registration
nsCOMPtr<nsIComponentManager> compManager = do_GetService(kComponentManagerCID);
nsCOMPtr<nsIFile> path;
@ -2795,6 +2794,11 @@ static PRBool isUnwantedPlugin(nsPluginTag * tag)
NS_IMETHODIMP nsPluginHostImpl::LoadPlugins()
{
// do not do anything if it is already done
// use nsPluginHostImpl::ReloadPlugins to enforce loading
if(mPluginsLoaded)
return NS_OK;
// retrieve a path for layout module. Needed for plugin mime types registration
nsCOMPtr<nsIComponentManager> compManager = do_GetService(kComponentManagerCID);
nsCOMPtr<nsIFile> path;

View File

@ -1407,8 +1407,8 @@ NS_IMETHODIMP nsPluginHostImpl::GetValue(nsPluginManagerVariable aVariable, void
nsresult nsPluginHostImpl::ReloadPlugins(PRBool reloadPages)
{
// XXX don't we want to nuke the old mPlugins right now?
// XXX for new-style plugins, we should also call
// nsIComponentManager::AutoRegister()
// we should. Otherwise LoadPlugins will add the same plugins to the list
// XXX for new-style plugins, we should also call nsIComponentManager::AutoRegister()
mPluginsLoaded = PR_FALSE;
return LoadPlugins();
}
@ -1870,7 +1870,7 @@ NS_IMETHODIMP nsPluginHostImpl::InstantiateEmbededPlugin(const char *aMimeType,
}
#ifdef NS_DEBUG
if(!aMimeType)
if(aMimeType)
printf("InstantiateEmbededPlugin for %s\n",aMimeType);
#endif
@ -2318,7 +2318,6 @@ nsPluginHostImpl::IsPluginEnabledForType(const char* aMimeType)
nsPluginTag *plugins = nsnull;
PRInt32 variants, cnt;
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
// if we have a mimetype passed in, search the mPlugins linked
@ -2379,7 +2378,6 @@ nsPluginHostImpl::IsPluginEnabledForExtension(const char* aExtension,
nsPluginTag *plugins = nsnull;
PRInt32 variants, cnt;
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
// if we have a mimetype passed in, search the mPlugins linked
@ -2524,7 +2522,6 @@ NS_IMPL_ISUPPORTS(DOMPluginImpl, nsIDOMPlugin::GetIID());
NS_IMETHODIMP
nsPluginHostImpl::GetPluginCount(PRUint32* aPluginCount)
{
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
PRUint32 count = 0;
@ -2544,7 +2541,6 @@ NS_IMETHODIMP
nsPluginHostImpl::GetPlugins(PRUint32 aPluginCount,
nsIDOMPlugin* aPluginArray[])
{
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
nsPluginTag* plugin = mPlugins;
@ -2567,7 +2563,6 @@ nsPluginHostImpl::FindPluginEnabledForType(const char* aMimeType,
aPlugin = nsnull;
if (PR_FALSE == mPluginsLoaded)
LoadPlugins();
// if we have a mimetype passed in, search the mPlugins
@ -2604,7 +2599,6 @@ NS_IMETHODIMP nsPluginHostImpl::GetPluginFactory(const char *aMimeType, nsIPlugi
return NS_ERROR_ILLEGAL_VALUE;
// If plugins haven't been scanned yet, do so now
if (mPlugins == nsnull)
LoadPlugins();
nsPluginTag* pluginTag;
@ -2677,6 +2671,11 @@ NS_IMETHODIMP nsPluginHostImpl::GetPluginFactory(const char *aMimeType, nsIPlugi
NS_IMETHODIMP nsPluginHostImpl::LoadPlugins()
{
// do not do anything if it is already done
// use nsPluginHostImpl::ReloadPlugins to enforce loading
if(mPluginsLoaded)
return NS_OK;
// retrieve a path for layout module. Needed for plugin mime types registration
nsCOMPtr<nsIComponentManager> compManager = do_GetService(kComponentManagerCID);
nsCOMPtr<nsIFile> path;
@ -2795,6 +2794,11 @@ static PRBool isUnwantedPlugin(nsPluginTag * tag)
NS_IMETHODIMP nsPluginHostImpl::LoadPlugins()
{
// do not do anything if it is already done
// use nsPluginHostImpl::ReloadPlugins to enforce loading
if(mPluginsLoaded)
return NS_OK;
// retrieve a path for layout module. Needed for plugin mime types registration
nsCOMPtr<nsIComponentManager> compManager = do_GetService(kComponentManagerCID);
nsCOMPtr<nsIFile> path;