<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[244105] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/244105">244105</a></dd>
<dt>Author</dt> <dd>carlosgc@webkit.org</dd>
<dt>Date</dt> <dd>2019-04-10 00:59:14 -0700 (Wed, 10 Apr 2019)</dd>
</dl>

<h3>Log Message</h3>
<pre>[ATK] Test accessibility/insert-children-assert.html is crashing since added in <a href="http://trac.webkit.org/projects/webkit/changeset/216980">r216980</a>
https://bugs.webkit.org/show_bug.cgi?id=172281
<rdar://problem/37030990>

Reviewed by Joanmarie Diggs.

Source/WebCore:

The crash happens because at some point the test tries to get the anonymous block text, getting the RenderText as
first child and RenderFullScreen as last child and the latter doesn't have a node. This is because in atk we do
things differently, we don't include the static text elements individually, but parent element uses
textUnderElement() to get all the pieces together. We can just turn the asserts into actual nullptr checks.

Fixes: accessibility/insert-children-assert.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement const):

LayoutTests:

Update the test to expect the whole content text on atk and remove the test expectations.

* accessibility/insert-children-assert.html:
* platform/gtk/TestExpectations:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsaccessibilityinsertchildrenasserthtml">trunk/LayoutTests/accessibility/insert-children-assert.html</a></li>
<li><a href="#trunkLayoutTestsplatformgtkTestExpectations">trunk/LayoutTests/platform/gtk/TestExpectations</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreaccessibilityAccessibilityRenderObjectcpp">trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (244104 => 244105)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog      2019-04-10 07:22:52 UTC (rev 244104)
+++ trunk/LayoutTests/ChangeLog 2019-04-10 07:59:14 UTC (rev 244105)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2019-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [ATK] Test accessibility/insert-children-assert.html is crashing since added in r216980
+        https://bugs.webkit.org/show_bug.cgi?id=172281
+        <rdar://problem/37030990>
+
+        Reviewed by Joanmarie Diggs.
+
+        Update the test to expect the whole content text on atk and remove the test expectations.
+
+        * accessibility/insert-children-assert.html:
+        * platform/gtk/TestExpectations:
+
</ins><span class="cx"> 2019-04-09  John Wilander  <wilander@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Add Resource Load Statistics test case for Ping
</span></span></pre></div>
<a id="trunkLayoutTestsaccessibilityinsertchildrenasserthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/accessibility/insert-children-assert.html (244104 => 244105)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/insert-children-assert.html      2019-04-10 07:22:52 UTC (rev 244104)
+++ trunk/LayoutTests/accessibility/insert-children-assert.html 2019-04-10 07:59:14 UTC (rev 244105)
</span><span class="lines">@@ -27,7 +27,11 @@
</span><span class="cx"> 
</span><span class="cx">     if ("webkitRequestFullScreen" in Element.prototype) {
</span><span class="cx">         var content = accessibilityController.accessibleElementById("content");
</span><del>-        var value = "AXValue: d";
</del><ins>+        var value;
+        if (accessibilityController.platformName == "atk")
+            value = "AXValue: ab<\\n>c<\\n>de<\\n>";
+        else
+            value = "AXValue: d";
</ins><span class="cx">         document.body.offsetTop;
</span><span class="cx">         var span = document.getElementsByTagName('span')[0];
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsplatformgtkTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/gtk/TestExpectations (244104 => 244105)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/TestExpectations  2019-04-10 07:22:52 UTC (rev 244104)
+++ trunk/LayoutTests/platform/gtk/TestExpectations     2019-04-10 07:59:14 UTC (rev 244105)
</span><span class="lines">@@ -1287,8 +1287,6 @@
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/163782 media/video-played-ranges-1.html [ Crash Pass Failure ]
</span><span class="cx"> 
</span><del>-webkit.org/b/172281 accessibility/insert-children-assert.html [ Crash ]
-
</del><span class="cx"> webkit.org/b/172955 media/video-preload.html [ Crash Pass ]
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/175575 imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-with-slow-text-tracks.html [ Crash Pass ]
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (244104 => 244105)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog   2019-04-10 07:22:52 UTC (rev 244104)
+++ trunk/Source/WebCore/ChangeLog      2019-04-10 07:59:14 UTC (rev 244105)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2019-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [ATK] Test accessibility/insert-children-assert.html is crashing since added in r216980
+        https://bugs.webkit.org/show_bug.cgi?id=172281
+        <rdar://problem/37030990>
+
+        Reviewed by Joanmarie Diggs.
+
+        The crash happens because at some point the test tries to get the anonymous block text, getting the RenderText as
+        first child and RenderFullScreen as last child and the latter doesn't have a node. This is because in atk we do
+        things differently, we don't include the static text elements individually, but parent element uses
+        textUnderElement() to get all the pieces together. We can just turn the asserts into actual nullptr checks.
+
+        Fixes: accessibility/insert-children-assert.html
+
+        * accessibility/AccessibilityRenderObject.cpp:
+        (WebCore::AccessibilityRenderObject::textUnderElement const):
+
</ins><span class="cx"> 2019-04-09  Keith Rollin  <krollin@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Unreviewed build maintenance -- update .xcfilelists.
</span></span></pre></div>
<a id="trunkSourceWebCoreaccessibilityAccessibilityRenderObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp (244104 => 244105)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp 2019-04-10 07:22:52 UTC (rev 244104)
+++ trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp    2019-04-10 07:59:14 UTC (rev 244105)
</span><span class="lines">@@ -640,10 +640,7 @@
</span><span class="cx">             // defining one based in the two external positions defining the boundaries of the subtree.
</span><span class="cx">             RenderObject* firstChildRenderer = m_renderer->firstChildSlow();
</span><span class="cx">             RenderObject* lastChildRenderer = m_renderer->lastChildSlow();
</span><del>-            if (firstChildRenderer && lastChildRenderer) {
-                ASSERT(firstChildRenderer->node());
-                ASSERT(lastChildRenderer->node());
-
</del><ins>+            if (firstChildRenderer && firstChildRenderer->node() && lastChildRenderer && lastChildRenderer->node()) {
</ins><span class="cx">                 // We define the start and end positions for the range as the ones right before and after
</span><span class="cx">                 // the first and the last nodes in the DOM tree that is wrapped inside the anonymous block.
</span><span class="cx">                 Node* firstNodeInBlock = firstChildRenderer->node();
</span></span></pre>
</div>
</div>

</body>
</html>