зеркало из https://github.com/mozilla/pjs.git
Fixes 51759. If we ship without a plugin manager as we can do for embedding, we crash loading most pages with plugins. This change basically returns an error from Reflow if we cant get the plugin manager component. r=valeski
This commit is contained in:
Родитель
ccb38500a1
Коммит
0af5fcab2b
|
@ -616,6 +616,9 @@ nsObjectFrame::Reflow(nsIPresContext* aPresContext,
|
|||
|
||||
// get the nsIPluginHost interface
|
||||
pluginHost = do_GetService(kCPluginManagerCID);
|
||||
if (!pluginHost)
|
||||
return NS_ERROR_MODULE_PLUGINS;
|
||||
|
||||
mInstanceOwner->SetPluginHost(pluginHost);
|
||||
rv = InstantiatePlugin(aPresContext, aMetrics, aReflowState, pluginHost, mimeType, fullURL);
|
||||
}
|
||||
|
@ -653,6 +656,9 @@ nsObjectFrame::Reflow(nsIPresContext* aPresContext,
|
|||
|
||||
// get the nsIPluginHost interface
|
||||
pluginHost = do_GetService(kCPluginManagerCID);
|
||||
if (!pluginHost)
|
||||
return NS_ERROR_MODULE_PLUGINS;
|
||||
|
||||
mInstanceOwner->SetPluginHost(pluginHost);
|
||||
if(pluginHost->IsPluginEnabledForType("application/x-oleobject") == NS_OK)
|
||||
rv = InstantiatePlugin(aPresContext, aMetrics, aReflowState, pluginHost, "application/x-oleobject", fullURL);
|
||||
|
@ -692,6 +698,9 @@ nsObjectFrame::Reflow(nsIPresContext* aPresContext,
|
|||
|
||||
// get the nsIPluginHost interface
|
||||
pluginHost = do_GetService(kCPluginManagerCID);
|
||||
if (!pluginHost)
|
||||
return NS_ERROR_MODULE_PLUGINS;
|
||||
|
||||
mInstanceOwner->SetPluginHost(pluginHost);
|
||||
|
||||
mContent->GetTag(atom);
|
||||
|
@ -2489,5 +2498,5 @@ void nsPluginInstanceOwner::SetPluginHost(nsIPluginHost* aHost)
|
|||
NS_RELEASE(mPluginHost);
|
||||
|
||||
mPluginHost = aHost;
|
||||
NS_ADDREF(mPluginHost);
|
||||
NS_IF_ADDREF(mPluginHost);
|
||||
}
|
||||
|
|
|
@ -616,6 +616,9 @@ nsObjectFrame::Reflow(nsIPresContext* aPresContext,
|
|||
|
||||
// get the nsIPluginHost interface
|
||||
pluginHost = do_GetService(kCPluginManagerCID);
|
||||
if (!pluginHost)
|
||||
return NS_ERROR_MODULE_PLUGINS;
|
||||
|
||||
mInstanceOwner->SetPluginHost(pluginHost);
|
||||
rv = InstantiatePlugin(aPresContext, aMetrics, aReflowState, pluginHost, mimeType, fullURL);
|
||||
}
|
||||
|
@ -653,6 +656,9 @@ nsObjectFrame::Reflow(nsIPresContext* aPresContext,
|
|||
|
||||
// get the nsIPluginHost interface
|
||||
pluginHost = do_GetService(kCPluginManagerCID);
|
||||
if (!pluginHost)
|
||||
return NS_ERROR_MODULE_PLUGINS;
|
||||
|
||||
mInstanceOwner->SetPluginHost(pluginHost);
|
||||
if(pluginHost->IsPluginEnabledForType("application/x-oleobject") == NS_OK)
|
||||
rv = InstantiatePlugin(aPresContext, aMetrics, aReflowState, pluginHost, "application/x-oleobject", fullURL);
|
||||
|
@ -692,6 +698,9 @@ nsObjectFrame::Reflow(nsIPresContext* aPresContext,
|
|||
|
||||
// get the nsIPluginHost interface
|
||||
pluginHost = do_GetService(kCPluginManagerCID);
|
||||
if (!pluginHost)
|
||||
return NS_ERROR_MODULE_PLUGINS;
|
||||
|
||||
mInstanceOwner->SetPluginHost(pluginHost);
|
||||
|
||||
mContent->GetTag(atom);
|
||||
|
@ -2489,5 +2498,5 @@ void nsPluginInstanceOwner::SetPluginHost(nsIPluginHost* aHost)
|
|||
NS_RELEASE(mPluginHost);
|
||||
|
||||
mPluginHost = aHost;
|
||||
NS_ADDREF(mPluginHost);
|
||||
NS_IF_ADDREF(mPluginHost);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче