Source/WebCore/ChangeLog

 12013-01-06 David Faure <faure@kde.org>
 2
 3 [Qt] Major performance improvement in Qt's PluginDatabase implementation
 4 https://bugs.webkit.org/show_bug.cgi?id=106140
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 No new tests, only a performance improvement.
 9
 10 * plugins/qt/PluginPackageQt.cpp:
 11 (WebCore::PluginPackage::fetchInfo): Don't do a full-fledged load(), load the module directly.
 12 (WebCore::PluginPackage::load): Use existing module if fetchInfo created it.
 13
1142013-01-04 Adam Barth <abarth@webkit.org>
215
316 HTMLTreeBuilder should ASSERT that it is on the main thread before touching elements

Source/WebCore/plugins/qt/PluginPackageQt.cpp

@@namespace WebCore {
3838
3939bool PluginPackage::fetchInfo()
4040{
41  if (!load())
42  return false;
 41 if (!m_module) {
 42 m_module = new QLibrary((QString)m_path);
 43 m_module->setLoadHints(QLibrary::ResolveAllSymbolsHint);
 44 if (!m_module->load()) {
 45 LOG(Plugins, "%s not loaded (%s)", m_path.utf8().data(),
 46 m_module->errorString().toLatin1().constData());
 47 return false;
 48 }
 49 }
4350
4451 NPP_GetValueProcPtr gv = (NPP_GetValueProcPtr)m_module->resolve("NP_GetValue");
4552 NP_GetMIMEDescriptionFuncPtr gm =

@@bool PluginPackage::fetchInfo()
6168 determineModuleVersionFromDescription();
6269
6370 setMIMEDescription(String::fromUTF8(gm()));
64  m_infoIsFromCache = false;
6571
6672 return true;
6773}

@@bool PluginPackage::load()
155161 if (isPluginBlacklisted())
156162 return false;
157163
158  m_module = new QLibrary((QString)m_path);
159  m_module->setLoadHints(QLibrary::ResolveAllSymbolsHint);
160  if (!m_module->load()) {
161  LOG(Plugins, "%s not loaded (%s)", m_path.utf8().data(),
 164 if (!m_module) {
 165 m_module = new QLibrary((QString)m_path);
 166 m_module->setLoadHints(QLibrary::ResolveAllSymbolsHint);
 167 if (!m_module->load()) {
 168 LOG(Plugins, "%s not loaded (%s)", m_path.utf8().data(),
162169 m_module->errorString().toLatin1().constData());
163  return false;
 170 return false;
 171 }
164172 }
165173
166174 m_isLoaded = true;