summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp')
-rw-r--r--src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp b/src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp
index b52553ec9a..40d9b2a976 100644
--- a/src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp
+++ b/src/3rdparty/webkit/WebCore/plugins/win/PluginPackageWin.cpp
@@ -81,9 +81,16 @@ bool PluginPackage::isPluginBlacklisted()
if (compareFileVersion(slPluginMinRequired) < 0)
return true;
- } else if (fileName() == "npmozax.dll")
+ } else if (fileName() == "npmozax.dll") {
// Bug 15217: Mozilla ActiveX control complains about missing xpcom_core.dll
return true;
+ } else if (name() == "Yahoo Application State Plugin") {
+ // https://bugs.webkit.org/show_bug.cgi?id=26860
+ // Bug in Yahoo Application State plug-in earlier than 1.0.0.6 leads to heap corruption.
+ static const PlatformModuleVersion yahooAppStatePluginMinRequired(0x00000006, 0x00010000);
+ if (compareFileVersion(yahooAppStatePluginMinRequired) < 0)
+ return true;
+ }
return false;
}
@@ -248,7 +255,7 @@ bool PluginPackage::load()
return false;
// Load the library
- m_module = ::LoadLibraryW(m_path.charactersWithNullTermination());
+ m_module = ::LoadLibraryExW(m_path.charactersWithNullTermination(), 0, LOAD_WITH_ALTERED_SEARCH_PATH);
if (!::SetCurrentDirectoryW(currentPath)) {
if (m_module)