Title: [150328] trunk/Source/WebKit/qt
Revision
150328
Author
[email protected]
Date
2013-05-18 01:11:48 -0700 (Sat, 18 May 2013)

Log Message

[Qt] REGRESSION(r150227): It made zillion tests crash under PlatformStrategiesQt::getPluginInfo
https://bugs.webkit.org/show_bug.cgi?id=116289

Patch by Tim Horton <[email protected]> on 2013-05-18
Reviewed by Csaba Osztrogonác.

Don't try to static cast something that isn't a ChromeClientQt to ChromeClientQt.
It's actually SVGImage's EmptyChromeClient-derived client (or other such things).

* WebCoreSupport/PlatformStrategiesQt.cpp:
(PlatformStrategiesQt::getPluginInfo):

Modified Paths

Diff

Modified: trunk/Source/WebKit/qt/ChangeLog (150327 => 150328)


--- trunk/Source/WebKit/qt/ChangeLog	2013-05-18 07:33:44 UTC (rev 150327)
+++ trunk/Source/WebKit/qt/ChangeLog	2013-05-18 08:11:48 UTC (rev 150328)
@@ -1,3 +1,16 @@
+2013-05-18  Tim Horton  <[email protected]>
+
+        [Qt] REGRESSION(r150227): It made zillion tests crash under PlatformStrategiesQt::getPluginInfo
+        https://bugs.webkit.org/show_bug.cgi?id=116289
+
+        Reviewed by Csaba Osztrogonác.
+
+        Don't try to static cast something that isn't a ChromeClientQt to ChromeClientQt.
+        It's actually SVGImage's EmptyChromeClient-derived client (or other such things).
+
+        * WebCoreSupport/PlatformStrategiesQt.cpp:
+        (PlatformStrategiesQt::getPluginInfo):
+
 2013-05-16  Tim Horton  <[email protected]>
 
         PDFPlugins don't load when plugins are disabled, but they should

Modified: trunk/Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp (150327 => 150328)


--- trunk/Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp	2013-05-18 07:33:44 UTC (rev 150327)
+++ trunk/Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp	2013-05-18 08:11:48 UTC (rev 150328)
@@ -137,7 +137,10 @@
 
 void PlatformStrategiesQt::getPluginInfo(const WebCore::Page* page, Vector<WebCore::PluginInfo>& outPlugins)
 {
-    QWebPageAdapter* qPage = static_cast<ChromeClientQt*>(page->chrome().client())->m_webPage;
+    QWebPageAdapter* qPage = 0;
+    if (!page->chrome().client()->isEmptyChromeClient())
+        qPage = static_cast<ChromeClientQt*>(page->chrome().client())->m_webPage;
+
     QWebPluginFactory* factory;
     if (qPage && (factory = qPage->pluginFactory)) {
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to