summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-30 23:05:11 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-30 23:05:11 +0000
commit6165e2ab4af4c217e21c0ec167b7eced8fca491c (patch)
tree387a179dc41e1398bc050edf595288bfd1315a8e /webkit
parente580551a844f99c341876c7564a719ea07f07e30 (diff)
downloadchromium_src-6165e2ab4af4c217e21c0ec167b7eced8fca491c.zip
chromium_src-6165e2ab4af4c217e21c0ec167b7eced8fca491c.tar.gz
chromium_src-6165e2ab4af4c217e21c0ec167b7eced8fca491c.tar.bz2
Added audio/mpeg and video/mpeg to the list of mime types supported by the Activex shim for media player along with their associated extensions.
This fixes http://code.google.com/p/chromium/issues/detail?id=11054, which occurs with embed tags with a source URL and no mime type. In this case the URL extension is mp3, which is not claimed by any plugin although Quicktime and media player do handle it. It works in Firefox because the plugin instantiation code in FF correctly gets the mime type from the http stream and instantiates the plugin accordingly. Webkit attempts to instantiate the plugin from the embed tag with the source URL. This fails silently in Chrome and Safari displays an error message. With this fix the only user visible difference would be quicktime handling the mp3 in FF and IE, and media player handling it in Chrome. I also moved the media player shim to the end of the plugin list to ensure it does not take over the audio/mpeg and video/mpeg mime types if there is a a plugin which can handle it. Added plugin tests for the mp3 and mpe extensions. Bug=11054 Review URL: http://codereview.chromium.org/100180 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15008 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/glue/plugins/plugin_list.cc4
-rw-r--r--webkit/glue/plugins/plugin_list_win.cc5
2 files changed, 5 insertions, 4 deletions
diff --git a/webkit/glue/plugins/plugin_list.cc b/webkit/glue/plugins/plugin_list.cc
index cfc397b..115d382 100644
--- a/webkit/glue/plugins/plugin_list.cc
+++ b/webkit/glue/plugins/plugin_list.cc
@@ -156,8 +156,6 @@ void PluginList::LoadPlugins(bool refresh) {
base::TimeTicks start_time = base::TimeTicks::Now();
- LoadInternalPlugins();
-
std::vector<FilePath> directories_to_scan;
GetPluginDirectories(&directories_to_scan);
@@ -175,6 +173,8 @@ void PluginList::LoadPlugins(bool refresh) {
if (webkit_glue::IsDefaultPluginEnabled())
LoadPlugin(FilePath(kDefaultPluginLibraryName));
+ LoadInternalPlugins();
+
base::TimeTicks end_time = base::TimeTicks::Now();
base::TimeDelta elapsed = end_time - start_time;
DLOG(INFO) << "Loaded plugin list in " << elapsed.InMilliseconds() << " ms.";
diff --git a/webkit/glue/plugins/plugin_list_win.cc b/webkit/glue/plugins/plugin_list_win.cc
index ebe5312..94104c8 100644
--- a/webkit/glue/plugins/plugin_list_win.cc
+++ b/webkit/glue/plugins/plugin_list_win.cc
@@ -216,8 +216,9 @@ void PluginList::PlatformInit() {
L"1, 0, 0, 1",
L"application/x-ms-wmp|application/asx|video/x-ms-asf-plugin|"
L"application/x-mplayer2|video/x-ms-asf|video/x-ms-wm|audio/x-ms-wma|"
- L"audio/x-ms-wax|video/x-ms-wmv|video/x-ms-wvx",
- L"*|*|*|*|asf,asx,*|wm,*|wma,*|wax,*|wmv,*|wvx,*",
+ L"audio/x-ms-wax|video/x-ms-wmv|video/x-ms-wvx|audio/mpeg|video/mpeg",
+ L"*|*|*|*|asf,asx,*|wm,*|wma,*|wax,*|wmv,*|wvx,*|mp2,mp3,mpa,mpeg,mpg|"
+ L"mpeg,mpg,m1v,mpe",
L"",
{
activex_shim::ActiveX_Shim_NP_GetEntryPoints,