Title: [167839] trunk/Source/WebKit2
Revision
167839
Author
[email protected]
Date
2014-04-25 20:54:33 -0700 (Fri, 25 Apr 2014)

Log Message

[iOS] getAssistedNodeInformation crashes getting the bounding box if it doesn't have a renderer
https://bugs.webkit.org/show_bug.cgi?id=132217
<rdar://problem/16671662>

Patch by Simon Fraser <[email protected]> on 2014-04-25
Reviewed by Dean Jackson.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getAssistedNodeInformation): Check that m_assistedNode has
a renderer before asking for its bounding box.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (167838 => 167839)


--- trunk/Source/WebKit2/ChangeLog	2014-04-26 03:30:52 UTC (rev 167838)
+++ trunk/Source/WebKit2/ChangeLog	2014-04-26 03:54:33 UTC (rev 167839)
@@ -1,3 +1,15 @@
+2014-04-25  Simon Fraser  <[email protected]>
+
+        [iOS] getAssistedNodeInformation crashes getting the bounding box if it doesn't have a renderer
+        https://bugs.webkit.org/show_bug.cgi?id=132217
+        <rdar://problem/16671662>
+
+        Reviewed by Dean Jackson.
+
+        * WebProcess/WebPage/ios/WebPageIOS.mm:
+        (WebKit::WebPage::getAssistedNodeInformation): Check that m_assistedNode has
+        a renderer before asking for its bounding box.
+
 2014-04-25  Benjamin Poulain  <[email protected]>
 
         [iOS][WK2] Add an intermediary view to do the target transform and adjustment transform

Modified: trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm (167838 => 167839)


--- trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm	2014-04-26 03:30:52 UTC (rev 167838)
+++ trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm	2014-04-26 03:54:33 UTC (rev 167839)
@@ -1682,7 +1682,10 @@
 
 void WebPage::getAssistedNodeInformation(AssistedNodeInformation& information)
 {
-    information.elementRect = m_page->focusController().focusedOrMainFrame().view()->contentsToRootView(m_assistedNode->renderer()->absoluteBoundingBoxRect());
+    if (RenderObject* renderer = m_assistedNode->renderer())
+        information.elementRect = m_page->focusController().focusedOrMainFrame().view()->contentsToRootView(renderer->absoluteBoundingBoxRect());
+    else
+        information.elementRect = IntRect();
     information.minimumScaleFactor = m_viewportConfiguration.minimumScale();
     information.maximumScaleFactor = m_viewportConfiguration.maximumScale();
     information.hasNextNode = hasFocusableElement(m_assistedNode.get(), m_page.get(), true);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to