summaryrefslogtreecommitdiffstats
path: root/Source/WebKit2/UIProcess/Plugins/win
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-06-02 12:07:03 +0100
committerBen Murdoch <benm@google.com>2011-06-10 10:47:21 +0100
commit2daae5fd11344eaa88a0d92b0f6d65f8d2255c00 (patch)
treee4964fbd1cb70599f7718ff03e50ea1dab33890b /Source/WebKit2/UIProcess/Plugins/win
parent87bdf0060a247bfbe668342b87e0874182e0ffa9 (diff)
downloadexternal_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.zip
external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.tar.gz
external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.tar.bz2
Merge WebKit at r84325: Initial merge by git.
Change-Id: Ic1a909300ecc0a13ddc6b4e784371d2ac6e3d59b
Diffstat (limited to 'Source/WebKit2/UIProcess/Plugins/win')
-rw-r--r--Source/WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp15
1 files changed, 12 insertions, 3 deletions
diff --git a/Source/WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp b/Source/WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp
index f695969..f29fa4f 100644
--- a/Source/WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp
+++ b/Source/WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp
@@ -27,6 +27,7 @@
#include "PluginInfoStore.h"
#include "NetscapePluginModule.h"
+#include <WebCore/FileSystem.h>
#include <WebCore/PathWalker.h>
#include <shlwapi.h>
@@ -339,9 +340,6 @@ static bool isNewWindowsMediaPlayerPlugin(const PluginInfoStore::Plugin& plugin)
bool PluginInfoStore::shouldUsePlugin(const Plugin& plugin)
{
- // FIXME: We should prefer a newer version of a plugin to an older version, rather than loading
- // both. <http://webkit.org/b/49075>
-
if (plugin.info.name == "Citrix ICA Client") {
// The Citrix ICA Client plug-in requires a Mozilla-based browser; see <rdar://6418681>.
return false;
@@ -393,6 +391,17 @@ bool PluginInfoStore::shouldUsePlugin(const Plugin& plugin)
return true;
}
+ // FIXME: We should prefer a newer version of a plugin to an older version, rather than loading
+ // only the first. <http://webkit.org/b/58469>
+ String pluginFileName = pathGetFileName(plugin.path);
+ for (size_t i = 0; i < m_plugins.size(); ++i) {
+ Plugin& loadedPlugin = m_plugins[i];
+
+ // If a plug-in with the same filename already exists, we don't want to load it.
+ if (equalIgnoringCase(pluginFileName, pathGetFileName(loadedPlugin.path)))
+ return false;
+ }
+
return true;
}