summaryrefslogtreecommitdiffstats
path: root/src/core/content_client_qt.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2015-12-03 19:36:29 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2015-12-03 19:36:29 +0100
commit90d3044e3a6ad58819be6787b5edcbc9daa948dc (patch)
tree27d54322988fe60a420bbb058608b9b9d637329b /src/core/content_client_qt.cpp
parent03301c0fbdf034fb987e1c1ed1bec7c206dcd27e (diff)
parentd0ae9b50cc01e4c0f65f17467276d4af40284ae1 (diff)
Merge remote-tracking branch 'origin/5.6' into dev
Diffstat (limited to 'src/core/content_client_qt.cpp')
-rw-r--r--src/core/content_client_qt.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/core/content_client_qt.cpp b/src/core/content_client_qt.cpp
index 48e563a47..59991d558 100644
--- a/src/core/content_client_qt.cpp
+++ b/src/core/content_client_qt.cpp
@@ -106,10 +106,19 @@ void AddPepperFlashFromSystem(std::vector<content::PepperPluginInfo>* plugins)
{
QStringList pluginPaths;
#if defined(Q_OS_WIN) && defined(Q_PROCESSOR_X86_32)
- QDir pluginDir("C:/Windows/SysWOW64/Macromed/Flash");
- pluginDir.setFilter(QDir::Files);
- QStringList nameFilters("pepflashplayer*.dll");
- pluginPaths << pluginDir.entryList(nameFilters);
+ QString winDir = QDir::fromNativeSeparators(qgetenv("WINDIR"));
+ if (winDir.isEmpty())
+ winDir = QString::fromLatin1("C:/Windows");
+
+ const QStringList pluginDirs = { winDir + "/SysWOW64/Macromed/Flash",
+ winDir + "/System32/Macromed/Flash" };
+ const QStringList nameFilters("pepflashplayer*.dll");
+ Q_FOREACH (const QString &dirPath, pluginDirs) {
+ QDir pluginDir(dirPath);
+ pluginDir.setFilter(QDir::Files);
+ Q_FOREACH (const QFileInfo &info, pluginDir.entryInfoList(nameFilters))
+ pluginPaths << info.absoluteFilePath();
+ }
#endif
#if defined(Q_OS_OSX)
pluginPaths << "/Library/Internet Plug-Ins/PepperFlashPlayer/PepperFlashPlayer.plugin"; // Mac OS X