<!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>[199752] 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/199752">199752</a></dd>
<dt>Author</dt> <dd>bfulgham@apple.com</dd>
<dt>Date</dt> <dd>2016-04-19 18:33:34 -0700 (Tue, 19 Apr 2016)</dd>
</dl>
<h3>Log Message</h3>
<pre>Remove remaining bits of dynamic <link> rel='icon' loading
https://bugs.webkit.org/show_bug.cgi?id=156727
Reviewed by Darin Adler.
Source/WebCore:
Don't call 'shouldLoadLink' for 'icon' link types. It performs no
useful checks for 'icon' types, and emits the non-standard
'onbeforeload' event.
This work finishes up https://webkit.org/b/153151, where we removed
FrameLoaderClient::dispatchDidChangeIcons() and related code.
Test: webarchive/test-link-rel-subresource-beforeload.html
* loader/LinkLoader.cpp:
(WebCore::LinkLoader::loadLink): Remove unneeded call to 'shouldLoadLink'.
Tools:
Remove unused test infrastructure. This code never existed in WebKit2
testing since was only used on Windows.
* DumpRenderTree/TestRunner.cpp:
(dumpIconChangesCallback): Deleted.
* DumpRenderTree/TestRunner.h:
(TestRunner::dumpIconChanges): Deleted.
(TestRunner::setDumpIconChanges): Deleted.
LayoutTests:
Rename 'test-link-rel-icon-beforeload.html' to 'test-link-rel-subresource-beforeload.html'.
* fast/dom/icon-url-property-expected.txt: Removed.
* fast/dom/icon-url-property.html: Removed.
* platform/gtk/TestExpectations: Remove references to deleted tests.
* platform/ios-simulator/TestExpectations: Ditto.
* platform/wk2/TestExpectations: Ditto.
* webarchive/test-link-rel-icon-beforeload-expected.webarchive: Removed.
* webarchive/test-link-rel-icon-beforeload.html: Removed.
* webarchive/test-link-rel-subresource-beforeload-expected.webarchive: Copied from LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive.
* webarchive/test-link-rel-subresource-beforeload.html: Copied from LayoutTests/webarchive/test-link-rel-icon-beforeload.html.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsplatformgtkTestExpectations">trunk/LayoutTests/platform/gtk/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformiossimulatorTestExpectations">trunk/LayoutTests/platform/ios-simulator/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformwk2TestExpectations">trunk/LayoutTests/platform/wk2/TestExpectations</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreloaderLinkLoadercpp">trunk/Source/WebCore/loader/LinkLoader.cpp</a></li>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsDumpRenderTreeTestRunnercpp">trunk/Tools/DumpRenderTree/TestRunner.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreeTestRunnerh">trunk/Tools/DumpRenderTree/TestRunner.h</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestswebarchivetestlinkrelsubresourcebeforeloadexpectedwebarchive">trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload-expected.webarchive</a></li>
<li><a href="#trunkLayoutTestswebarchivetestlinkrelsubresourcebeforeloadhtml">trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload.html</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastdomiconurlpropertyexpectedtxt">trunk/LayoutTests/fast/dom/icon-url-property-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastdomiconurlpropertyhtml">trunk/LayoutTests/fast/dom/icon-url-property.html</a></li>
<li><a href="#trunkLayoutTestswebarchivetestlinkreliconbeforeloadexpectedwebarchive">trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive</a></li>
<li><a href="#trunkLayoutTestswebarchivetestlinkreliconbeforeloadhtml">trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload.html</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/ChangeLog        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,3 +1,22 @@
</span><ins>+2016-04-19 Brent Fulgham <bfulgham@apple.com>
+
+ Remove remaining bits of dynamic <link> rel='icon' loading
+ https://bugs.webkit.org/show_bug.cgi?id=156727
+
+ Reviewed by Darin Adler.
+
+ Rename 'test-link-rel-icon-beforeload.html' to 'test-link-rel-subresource-beforeload.html'.
+
+ * fast/dom/icon-url-property-expected.txt: Removed.
+ * fast/dom/icon-url-property.html: Removed.
+ * platform/gtk/TestExpectations: Remove references to deleted tests.
+ * platform/ios-simulator/TestExpectations: Ditto.
+ * platform/wk2/TestExpectations: Ditto.
+ * webarchive/test-link-rel-icon-beforeload-expected.webarchive: Removed.
+ * webarchive/test-link-rel-icon-beforeload.html: Removed.
+ * webarchive/test-link-rel-subresource-beforeload-expected.webarchive: Copied from LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive.
+ * webarchive/test-link-rel-subresource-beforeload.html: Copied from LayoutTests/webarchive/test-link-rel-icon-beforeload.html.
+
</ins><span class="cx"> 2016-04-19 Chris Dumez <cdumez@apple.com>
</span><span class="cx">
</span><span class="cx"> AudioBufferSourceNode.buffer should be nullable
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomiconurlpropertyexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/dom/icon-url-property-expected.txt (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/icon-url-property-expected.txt        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/fast/dom/icon-url-property-expected.txt        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,7 +0,0 @@
</span><del>-main frame - didChangeIcons
-main frame - didChangeIcons
-main frame - didChangeIcons
-Original iconURL is: http://test.com/oldfavicon.ico
-Setting new icon URL to: http://test.com/newfavicon.ico
-New iconURL is: http://test.com/newfavicon.ico
-PASS - URL list matches expected
</del></span></pre></div>
<a id="trunkLayoutTestsfastdomiconurlpropertyhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/dom/icon-url-property.html (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/icon-url-property.html        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/fast/dom/icon-url-property.html        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,75 +0,0 @@
</span><del>-<html>
-<head>
-<title>Original Title</title>
-<link rel="shortcut icon" type="image/x-icon" href="http://test.com/oldfavicon.ico"/>
-<script>
-function debugOutput(str) {
- text = document.createTextNode(str);
- debugDiv = document.getElementById('debugDiv');
- div = document.createElement ('div');
- div.appendChild(text);
- debugDiv.appendChild(div);
-}
-
-function createFavIconElement(iconURL) {
- var link = document.createElement("link");
- link.type = "image/x-icon";
- link.rel = "shortcut icon";
- link.href = iconURL;
- return link;
-}
-
-function getHeadElement() {
- return document.getElementsByTagName("head")[0];
-}
-
-function setFavIcon(iconURL) {
- var docHead = getHeadElement();
- var links = docHead.getElementsByTagName("link");
- for (var i = 0; i < links.length; ++i) {
- var link = links[i];
- if (link.type=="image/x-icon" && link.rel=="shortcut icon") {
- docHead.removeChild(link);
- break; // Assuming only one match at most.
- }
- }
- docHead.appendChild(createFavIconElement(iconURL));
-}
-
-function runTests() {
- if (window.testRunner) {
- testRunner.dumpAsText();
- if (testRunner.dumpIconChanges)
- testRunner.dumpIconChanges();
- }
-
- iconURL = document.getElementsByTagName("head")[0].getElementsByTagName("link")[0].href;
- debugOutput ('Original iconURL is: ' + iconURL);
- newURL = 'http://test.com/newfavicon.ico';
- debugOutput ('Setting new icon URL to: ' + newURL);
- setFavIcon(newURL);
- iconURL = document.getElementsByTagName("head")[0].getElementsByTagName("link")[0].href;
-
- debugOutput ('New iconURL is: ' + iconURL);
-
- // check that the URL list in the document is as we expect
- var expectedURLs = "http://test.com/newfavicon.ico";
- var iconURLs = window.internals.shortcutIconURLs();
- if (expectedURLs == iconURLs[0])
- debugOutput('PASS - URL list matches expected');
- else
- debugOutput('FAIL - URL list does not match expected');
-
- // Add some more fav icons to verify that didChangeIcons gets called.
- var docHead = getHeadElement();
- docHead.insertBefore(createFavIconElement("http://example.org/icon1.ico"), docHead.firstChild);
- docHead.appendChild(createFavIconElement("http://example.org/icon2.ico"));
-}
-
-</script>
-</head>
-<body onload='runTests();'>
-<div id='debugDiv'>
-</div>
-</body>
-</html>
</del></span></pre></div>
<a id="trunkLayoutTestsplatformgtkTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/gtk/TestExpectations (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/TestExpectations        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/platform/gtk/TestExpectations        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -2076,8 +2076,6 @@
</span><span class="cx">
</span><span class="cx"> webkit.org/b/99893 svg/animations/mozilla/animateMotion-mpath-targetChange-1.svg [ ImageOnlyFailure Pass ]
</span><span class="cx">
</span><del>-webkit.org/b/112705 fast/dom/icon-url-property.html [ Failure ]
-
</del><span class="cx"> webkit.org/b/113772 http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_iframe_self_navigation.html [ Failure ]
</span><span class="cx"> webkit.org/b/113772 http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached.html [ Failure ]
</span><span class="cx">
</span></span></pre></div>
<a id="trunkLayoutTestsplatformiossimulatorTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-simulator/TestExpectations        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/platform/ios-simulator/TestExpectations        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1564,7 +1564,6 @@
</span><span class="cx"> fast/dom/custom/lifecycle-ready-parser-script.html [ Failure ]
</span><span class="cx"> fast/dom/horizontal-scrollbar-in-rtl.html [ Failure ]
</span><span class="cx"> fast/dom/horizontal-scrollbar-when-dir-change.html [ Failure ]
</span><del>-fast/dom/icon-url-property.html [ Failure ]
</del><span class="cx"> fast/dom/jsDevicePixelRatio.html [ Failure ]
</span><span class="cx"> fast/dom/navigator-detached-no-crash.html [ Failure ]
</span><span class="cx"> fast/dom/scroll-reveal-left-overflow.html [ Failure ]
</span></span></pre></div>
<a id="trunkLayoutTestsplatformwk2TestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/wk2/TestExpectations (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/wk2/TestExpectations        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/platform/wk2/TestExpectations        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -45,10 +45,6 @@
</span><span class="cx"> webkit.org/b/156612 http/tests/security/contentSecurityPolicy/embed-redirect-blocked3.html [ Failure ]
</span><span class="cx"> webkit.org/b/156612 http/tests/security/contentSecurityPolicy/object-redirect-blocked3.html [ Failure ]
</span><span class="cx">
</span><del>-# WebKitTestRunner needs to implement testRunner.dumpIconChanges().
-webkit.org/b/44046 http/tests/security/contentSecurityPolicy/icon-allowed.html
-webkit.org/b/44046 http/tests/security/contentSecurityPolicy/icon-blocked.html
-
</del><span class="cx"> # AX tests that require hit testing do not work in WK2.
</span><span class="cx"> webkit.org/b/71298 accessibility/loading-iframe-updates-axtree.html
</span><span class="cx"> webkit.org/b/71298 accessibility/mac/html-slider-indicator.html
</span><span class="lines">@@ -72,9 +68,6 @@
</span><span class="cx"> webkit.org/b/42197 fast/harness/override-preferences-2.html [ Failure ]
</span><span class="cx"> webkit.org/b/42197 fast/text/zero-font-size.html [ Pass ]
</span><span class="cx">
</span><del>-# setIconDatabaseEnabled not implemented in WebKitTestRunner.
-webkit.org/b/115809 webarchive/test-link-rel-icon-beforeload.html [ Skip ]
-
</del><span class="cx"> webkit.org/b/82665 http/tests/webarchive/test-css-url-encoding.html [ Skip ]
</span><span class="cx"> webkit.org/b/82665 http/tests/webarchive/test-css-url-encoding-shift-jis.html [ Skip ]
</span><span class="cx"> webkit.org/b/82665 http/tests/webarchive/test-css-url-encoding-utf-8.html [ Skip ]
</span></span></pre></div>
<a id="trunkLayoutTestswebarchivetestlinkreliconbeforeloadexpectedwebarchive"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,48 +0,0 @@
</span><del>-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-        <key>WebMainResource</key>
-        <dict>
-                <key>WebResourceData</key>
-                <string>&lt;html&gt;&lt;head&gt;
-&lt;script&gt;
-function runTest()
-{
- if (window.testRunner) {
- testRunner.setIconDatabaseEnabled(true);
- testRunner.dumpDOMAsWebArchive();
- testRunner.queueReload();
- }
-}
-&lt;/script&gt;
-&lt;/head&gt;
-&lt;body onload="runTest()"&gt;
-&lt;div id="console"&gt;&lt;div style="font-family: monospace; color: green;"&gt;PASS&lt;/div&gt;&lt;/div&gt;
-&lt;script&gt;
-function print(message, color)
-{
- var paragraph = document.createElement("div");
- paragraph.appendChild(document.createTextNode(message));
- paragraph.style.fontFamily = "monospace";
- if (color)
- paragraph.style.color = color;
- document.getElementById("console").appendChild(paragraph);
-}
-&lt;/script&gt;
-&lt;p&gt;This test should have a green 'PASS' just above this line. If it doesn't, you failed.
-&lt;link rel="icon" onbeforeload="print('PASS','green');return false" href="resources/favicon.ico" type="image/x-icon"&gt;
-
-
-&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
-                <key>WebResourceFrameName</key>
-                <string></string>
-                <key>WebResourceMIMEType</key>
-                <string>text/html</string>
-                <key>WebResourceTextEncodingName</key>
-                <string>UTF-8</string>
-                <key>WebResourceURL</key>
-                <string>file:///LayoutTests/webarchive/test-link-rel-icon-beforeload.html</string>
-        </dict>
-</dict>
-</plist>
</del></span></pre></div>
<a id="trunkLayoutTestswebarchivetestlinkreliconbeforeloadhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload.html (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload.html        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload.html        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,30 +0,0 @@
</span><del>-<html>
-<head>
-<script>
-function runTest()
-{
- if (window.testRunner) {
- testRunner.setIconDatabaseEnabled(true);
- testRunner.dumpDOMAsWebArchive();
- testRunner.queueReload();
- }
-}
-</script>
-</head>
-<body onload="runTest()">
-<div id="console"></div>
-<script>
-function print(message, color)
-{
- var paragraph = document.createElement("div");
- paragraph.appendChild(document.createTextNode(message));
- paragraph.style.fontFamily = "monospace";
- if (color)
- paragraph.style.color = color;
- document.getElementById("console").appendChild(paragraph);
-}
-</script>
-<p>This test should have a green 'PASS' just above this line. If it doesn't, you failed.
-<link rel="icon" onbeforeload="print('PASS','green');return false" href="resources/favicon.ico" type="image/x-icon">
-</body>
-</html>
</del></span></pre></div>
<a id="trunkLayoutTestswebarchivetestlinkrelsubresourcebeforeloadexpectedwebarchivefromrev199751trunkLayoutTestswebarchivetestlinkreliconbeforeloadexpectedwebarchive"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload-expected.webarchive (from rev 199751, trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive) (0 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload-expected.webarchive         (rev 0)
+++ trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload-expected.webarchive        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+        <key>WebMainResource</key>
+        <dict>
+                <key>WebResourceData</key>
+                <string>&lt;html&gt;&lt;head&gt;
+&lt;script&gt;
+function runTest()
+{
+ if (window.testRunner) {
+ testRunner.dumpDOMAsWebArchive();
+ testRunner.queueReload();
+ }
+}
+&lt;/script&gt;
+&lt;/head&gt;
+&lt;body onload="runTest()"&gt;
+&lt;div id="console"&gt;&lt;div style="font-family: monospace; color: green;"&gt;PASS&lt;/div&gt;&lt;/div&gt;
+&lt;script&gt;
+function print(message, color)
+{
+ var paragraph = document.createElement("div");
+ paragraph.appendChild(document.createTextNode(message));
+ paragraph.style.fontFamily = "monospace";
+ if (color)
+ paragraph.style.color = color;
+ document.getElementById("console").appendChild(paragraph);
+}
+&lt;/script&gt;
+&lt;p&gt;This test should have a green 'PASS' just above this line. If it doesn't, you failed.
+&lt;link rel="subresource" onbeforeload="print('PASS','green');return false" href="resources/favicon.ico" type="image/x-icon"&gt;
+
+
+&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+                <key>WebResourceFrameName</key>
+                <string></string>
+                <key>WebResourceMIMEType</key>
+                <string>text/html</string>
+                <key>WebResourceTextEncodingName</key>
+                <string>UTF-8</string>
+                <key>WebResourceURL</key>
+                <string>file:///LayoutTests/webarchive/test-link-rel-subresource-beforeload.html</string>
+        </dict>
+</dict>
+</plist>
</ins></span></pre></div>
<a id="trunkLayoutTestswebarchivetestlinkrelsubresourcebeforeloadhtmlfromrev199751trunkLayoutTestswebarchivetestlinkreliconbeforeloadhtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload.html (from rev 199751, trunk/LayoutTests/webarchive/test-link-rel-icon-beforeload.html) (0 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload.html         (rev 0)
+++ trunk/LayoutTests/webarchive/test-link-rel-subresource-beforeload.html        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+<html>
+<head>
+<script>
+function runTest()
+{
+ if (window.testRunner) {
+ testRunner.dumpDOMAsWebArchive();
+ testRunner.queueReload();
+ }
+}
+</script>
+</head>
+<body onload="runTest()">
+<div id="console"></div>
+<script>
+function print(message, color)
+{
+ var paragraph = document.createElement("div");
+ paragraph.appendChild(document.createTextNode(message));
+ paragraph.style.fontFamily = "monospace";
+ if (color)
+ paragraph.style.color = color;
+ document.getElementById("console").appendChild(paragraph);
+}
+</script>
+<p>This test should have a green 'PASS' just above this line. If it doesn't, you failed.
+<link rel="subresource" onbeforeload="print('PASS','green');return false" href="resources/favicon.ico" type="image/x-icon">
+</body>
+</html>
</ins></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/Source/WebCore/ChangeLog        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,3 +1,22 @@
</span><ins>+2016-04-19 Brent Fulgham <bfulgham@apple.com>
+
+ Remove remaining bits of dynamic <link> rel='icon' loading
+ https://bugs.webkit.org/show_bug.cgi?id=156727
+
+ Reviewed by Darin Adler.
+
+ Don't call 'shouldLoadLink' for 'icon' link types. It performs no
+ useful checks for 'icon' types, and emits the non-standard
+ 'onbeforeload' event.
+
+ This work finishes up https://webkit.org/b/153151, where we removed
+ FrameLoaderClient::dispatchDidChangeIcons() and related code.
+
+ Test: webarchive/test-link-rel-subresource-beforeload.html
+
+ * loader/LinkLoader.cpp:
+ (WebCore::LinkLoader::loadLink): Remove unneeded call to 'shouldLoadLink'.
+
</ins><span class="cx"> 2016-04-19 Chris Dumez <cdumez@apple.com>
</span><span class="cx">
</span><span class="cx"> AudioBufferSourceNode.buffer should be nullable
</span></span></pre></div>
<a id="trunkSourceWebCoreloaderLinkLoadercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/loader/LinkLoader.cpp (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/loader/LinkLoader.cpp        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/Source/WebCore/loader/LinkLoader.cpp        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -137,12 +137,6 @@
</span><span class="cx">
</span><span class="cx"> bool LinkLoader::loadLink(const LinkRelAttribute& relAttribute, const URL& href, const String& as, const String& crossOrigin, Document& document)
</span><span class="cx"> {
</span><del>- // We'll record this URL per document, even if we later only use it in top level frames
- if (relAttribute.iconType != InvalidIcon && href.isValid() && !href.isEmpty()) {
- if (!m_client.shouldLoadLink())
- return false;
- }
-
</del><span class="cx"> if (relAttribute.isDNSPrefetch) {
</span><span class="cx"> Settings* settings = document.settings();
</span><span class="cx"> // FIXME: The href attribute of the link element can be in "//hostname" form, and we shouldn't attempt
</span></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/Tools/ChangeLog        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -1,3 +1,19 @@
</span><ins>+2016-04-19 Brent Fulgham <bfulgham@apple.com>
+
+ Remove remaining bits of dynamic <link> rel='icon' loading
+ https://bugs.webkit.org/show_bug.cgi?id=156727
+
+ Reviewed by Darin Adler.
+
+ Remove unused test infrastructure. This code never existed in WebKit2
+ testing since was only used on Windows.
+
+ * DumpRenderTree/TestRunner.cpp:
+ (dumpIconChangesCallback): Deleted.
+ * DumpRenderTree/TestRunner.h:
+ (TestRunner::dumpIconChanges): Deleted.
+ (TestRunner::setDumpIconChanges): Deleted.
+
</ins><span class="cx"> 2016-04-19 Keith Miller <keith_miller@apple.com>
</span><span class="cx">
</span><span class="cx"> ObjcInstance::stringValue should not call NSObject's description method
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreeTestRunnercpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/TestRunner.cpp (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/TestRunner.cpp        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/Tools/DumpRenderTree/TestRunner.cpp        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -81,7 +81,6 @@
</span><span class="cx"> , m_dumpSourceAsWebArchive(false)
</span><span class="cx"> , m_dumpStatusCallbacks(false)
</span><span class="cx"> , m_dumpTitleChanges(false)
</span><del>- , m_dumpIconChanges(false)
</del><span class="cx"> , m_dumpVisitedLinksCallback(false)
</span><span class="cx"> , m_dumpWillCacheResponse(false)
</span><span class="cx"> , m_generatePixelResults(true)
</span><span class="lines">@@ -263,13 +262,6 @@
</span><span class="cx"> return JSValueMakeUndefined(context);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static JSValueRef dumpIconChangesCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
-{
- TestRunner* controller = static_cast<TestRunner*>(JSObjectGetPrivate(thisObject));
- controller->setDumpIconChanges(true);
- return JSValueMakeUndefined(context);
-}
-
</del><span class="cx"> static JSValueRef dumpWillCacheResponseCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
</span><span class="cx"> {
</span><span class="cx"> TestRunner* controller = static_cast<TestRunner*>(JSObjectGetPrivate(thisObject));
</span><span class="lines">@@ -2064,7 +2056,6 @@
</span><span class="cx"> { "dumpSourceAsWebArchive", dumpSourceAsWebArchiveCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</span><span class="cx"> { "dumpStatusCallbacks", dumpStatusCallbacksCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</span><span class="cx"> { "dumpTitleChanges", dumpTitleChangesCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</span><del>- { "dumpIconChanges", dumpIconChangesCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</del><span class="cx"> { "dumpWillCacheResponse", dumpWillCacheResponseCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</span><span class="cx"> { "encodeHostName", encodeHostNameCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</span><span class="cx"> { "evaluateInWebInspector", evaluateInWebInspectorCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreeTestRunnerh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/TestRunner.h (199751 => 199752)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/TestRunner.h        2016-04-20 01:30:11 UTC (rev 199751)
+++ trunk/Tools/DumpRenderTree/TestRunner.h        2016-04-20 01:33:34 UTC (rev 199752)
</span><span class="lines">@@ -210,9 +210,6 @@
</span><span class="cx"> bool dumpTitleChanges() const { return m_dumpTitleChanges; }
</span><span class="cx"> void setDumpTitleChanges(bool dumpTitleChanges) { m_dumpTitleChanges = dumpTitleChanges; }
</span><span class="cx">
</span><del>- bool dumpIconChanges() const { return m_dumpIconChanges; }
- void setDumpIconChanges(bool dumpIconChanges) { m_dumpIconChanges = dumpIconChanges; }
-
</del><span class="cx"> bool dumpVisitedLinksCallback() const { return m_dumpVisitedLinksCallback; }
</span><span class="cx"> void setDumpVisitedLinksCallback(bool dumpVisitedLinksCallback) { m_dumpVisitedLinksCallback = dumpVisitedLinksCallback; }
</span><span class="cx">
</span><span class="lines">@@ -386,7 +383,6 @@
</span><span class="cx"> bool m_dumpSourceAsWebArchive;
</span><span class="cx"> bool m_dumpStatusCallbacks;
</span><span class="cx"> bool m_dumpTitleChanges;
</span><del>- bool m_dumpIconChanges;
</del><span class="cx"> bool m_dumpVisitedLinksCallback;
</span><span class="cx"> bool m_dumpWillCacheResponse;
</span><span class="cx"> bool m_generatePixelResults;
</span></span></pre>
</div>
</div>
</body>
</html>