<!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>[236563] 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/236563">236563</a></dd>
<dt>Author</dt> <dd>wilander@apple.com</dd>
<dt>Date</dt> <dd>2018-09-27 12:40:16 -0700 (Thu, 27 Sep 2018)</dd>
</dl>

<h3>Log Message</h3>
<pre>Resource Load Statistics: Remove temporary compatibility fix for auto-dismiss popups
https://bugs.webkit.org/show_bug.cgi?id=189980
<rdar://problem/44780645>

Reviewed by Alex Christensen.

Source/WebCore:

Test: http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html

The change in https://bugs.webkit.org/show_bug.cgi?id=183620 was a temporary
compatibility fix as explained in:
https://webkit.org/blog/8311/intelligent-tracking-prevention-2-0/. We should
remove it.

Most of these changes remove the parameter isTriggeredByUserGesture since it's no longer needed.

* loader/ResourceLoadObserver.cpp:
(WebCore::ResourceLoadObserver::setRequestStorageAccessUnderOpenerCallback):
(WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution):
(WebCore::ResourceLoadObserver::requestStorageAccessUnderOpener):
(WebCore::ResourceLoadObserver::logWindowCreation): Deleted.
* loader/ResourceLoadObserver.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::createWindow):
    Now no longer logs anything to ResourceLoadObserver.

Source/WebKit:

The change in https://bugs.webkit.org/show_bug.cgi?id=183620 was a temporary
compatibility fix as explained in:
https://webkit.org/blog/8311/intelligent-tracking-prevention-2-0/. We should
remove it.

These changes remove the parameter isTriggeredByUserGesture since it's no longer needed.

* UIProcess/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::requestStorageAccessUnderOpener):
* UIProcess/ResourceLoadStatisticsMemoryStore.h:
* UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener):
* UIProcess/WebResourceLoadStatisticsStore.h:
* UIProcess/WebResourceLoadStatisticsStore.messages.in:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):

LayoutTests:

This test was for the temporary compatibility fix in:
https://bugs.webkit.org/show_bug.cgi?id=183620. This change makes it into a
test that the compatibility fix is no longer there.

* http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-expected.txt: Renamed from LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt.
* http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html: Renamed from LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html.
* platform/ios-wk2/TestExpectations:
    Removed comment and entry since https://bugs.webkit.org/show_bug.cgi?id=183714 was fixed long ago.
* platform/ios/TestExpectations:
    Changed test name.
* platform/mac-wk2/TestExpectations:
    Changed test name.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsplatformiosTestExpectations">trunk/LayoutTests/platform/ios/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformioswk2TestExpectations">trunk/LayoutTests/platform/ios-wk2/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsplatformmacwk2TestExpectations">trunk/LayoutTests/platform/mac-wk2/TestExpectations</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreloaderResourceLoadObservercpp">trunk/Source/WebCore/loader/ResourceLoadObserver.cpp</a></li>
<li><a href="#trunkSourceWebCoreloaderResourceLoadObserverh">trunk/Source/WebCore/loader/ResourceLoadObserver.h</a></li>
<li><a href="#trunkSourceWebCorepageDOMWindowcpp">trunk/Source/WebCore/page/DOMWindow.cpp</a></li>
<li><a href="#trunkSourceWebKitChangeLog">trunk/Source/WebKit/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitUIProcessResourceLoadStatisticsMemoryStorecpp">trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.cpp</a></li>
<li><a href="#trunkSourceWebKitUIProcessResourceLoadStatisticsMemoryStoreh">trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.h</a></li>
<li><a href="#trunkSourceWebKitUIProcessWebResourceLoadStatisticsStorecpp">trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp</a></li>
<li><a href="#trunkSourceWebKitUIProcessWebResourceLoadStatisticsStoreh">trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h</a></li>
<li><a href="#trunkSourceWebKitUIProcessWebResourceLoadStatisticsStoremessagesin">trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.messages.in</a></li>
<li><a href="#trunkSourceWebKitWebProcessWebProcesscpp">trunk/Source/WebKit/WebProcess/WebProcess.cpp</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestshttptestsstorageAccessdenystorageaccessunderopenerifautodismissexpectedtxt">trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsstorageAccessdenystorageaccessunderopenerifautodismisshtml">trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestshttptestsstorageAccessgrantstorageaccessunderopenerexpectedtxt">trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsstorageAccessgrantstorageaccessunderopenerhtml">trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog      2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/LayoutTests/ChangeLog 2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -1,3 +1,24 @@
</span><ins>+2018-09-27  John Wilander  <wilander@apple.com>
+
+        Resource Load Statistics: Remove temporary compatibility fix for auto-dismiss popups
+        https://bugs.webkit.org/show_bug.cgi?id=189980
+        <rdar://problem/44780645>
+
+        Reviewed by Alex Christensen.
+
+        This test was for the temporary compatibility fix in:
+        https://bugs.webkit.org/show_bug.cgi?id=183620. This change makes it into a
+        test that the compatibility fix is no longer there.
+
+        * http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-expected.txt: Renamed from LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt.
+        * http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html: Renamed from LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html.
+        * platform/ios-wk2/TestExpectations:
+            Removed comment and entry since https://bugs.webkit.org/show_bug.cgi?id=183714 was fixed long ago.
+        * platform/ios/TestExpectations:
+            Changed test name.
+        * platform/mac-wk2/TestExpectations:
+            Changed test name.
+
</ins><span class="cx"> 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r236557.
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsstorageAccessdenystorageaccessunderopenerifautodismissexpectedtxtfromrev236562trunkLayoutTestshttptestsstorageAccessgrantstorageaccessunderopenerexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-expected.txt (from rev 236562, trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt) (0 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-expected.txt                         (rev 0)
+++ trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-expected.txt    2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+Tests that a cross-origin window from a prevalent domain with non-recent user interaction doesn't get storage access under its opener if it just loads and auto-dismisses.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS Cookie created.
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
+
+--------
+Frame: '<!--frame1-->'
+--------
+Should not receive first-party cookie.
+Did not receive cookie named 'firstPartyCookie'.
+Did not receive cookie named ''.
+Client-side document.cookie:
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsstorageAccessdenystorageaccessunderopenerifautodismisshtmlfromrev236562trunkLayoutTestshttptestsstorageAccessgrantstorageaccessunderopenerhtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html (from rev 236562, trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html) (0 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html                         (rev 0)
+++ trunk/LayoutTests/http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html    2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -0,0 +1,69 @@
</span><ins>+<!DOCTYPE html>
+<html>
+<head>
+    <script src="/js-test-resources/js-test.js"></script>
+    <script src="/resourceLoadStatistics/resources/util.js"></script>
+</head>
+<body onload="run()">
+<script>
+    description("Tests that a cross-origin window from a prevalent domain with non-recent user interaction doesn't get storage access under its opener if it just loads and auto-dismisses.");
+    jsTestIsAsync = true;
+
+    function finishTest() {
+        setEnableFeature(false, finishJSTest);
+    }
+
+    function openIframe(url, onLoadHandler) {
+        const element = document.createElement("iframe");
+        element.src = url;
+        if (onLoadHandler) {
+            element.onload = onLoadHandler;
+        }
+        document.body.appendChild(element);
+    }
+
+    function receiveMessage(event) {
+        if (event.origin === "http://localhost:8000") {
+            if (event.data.indexOf("PASS") !== -1)
+                testPassed(event.data.replace("PASS ", ""));
+            else
+                testFailed(event.data);
+        } else
+            testFailed("Received a message from an unexpected origin: " + event.origin);
+
+        newWin.close();
+        openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should not receive first-party cookie.", finishTest);
+    }
+
+    const thirdPartyOrigin = "http://localhost:8000";
+    const resourcePath = "/storageAccess/resources";
+    const thirdPartyBaseUrl = thirdPartyOrigin + resourcePath;
+    const firstPartyCookieName = "firstPartyCookie";
+    const subPathToGetCookies = "/get-cookies.php?name1=" + firstPartyCookieName;
+    var newWin;
+
+    function run() {
+        setEnableFeature(true, function() {
+            window.addEventListener("message", receiveMessage, false);
+
+            testRunner.setCanOpenWindows();
+
+            testRunner.setStatisticsPrevalentResource(thirdPartyOrigin, true, function() {
+                if (!testRunner.isStatisticsPrevalentResource(thirdPartyOrigin))
+                    testFailed("Host did not get set as prevalent resource.");
+                testRunner.setStatisticsHasHadUserInteraction(thirdPartyOrigin, true, function() {
+                    if (!testRunner.isStatisticsHasHadUserInteraction(thirdPartyOrigin))
+                        testFailed("Host did not get logged for user interaction.");
+                    testRunner.dumpChildFramesAsText();
+                    testRunner.setCloseRemainingWindowsWhenComplete(true);
+
+                    testRunner.statisticsUpdateCookieBlocking(function () {
+                        newWin = window.open(thirdPartyOrigin + "/storageAccess/resources/set-cookie-and-report-back.html", "testWindow");
+                    });
+                });
+            });
+        });
+    }
+</script>
+</body>
+</html>
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsstorageAccessgrantstorageaccessunderopenerexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt        2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener-expected.txt   2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -1,18 +0,0 @@
</span><del>-Tests that a cross-origin window from a prevalent domain with non-recent user interaction gets immediate storage access under its opener.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS Cookie created.
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
-
---------
-Frame: '<!--frame1-->'
---------
-Should receive first-party cookie.
-Received cookie named 'firstPartyCookie'.
-Did not receive cookie named ''.
-Client-side document.cookie: firstPartyCookie=value
</del></span></pre></div>
<a id="trunkLayoutTestshttptestsstorageAccessgrantstorageaccessunderopenerhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html        2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/LayoutTests/http/tests/storageAccess/grant-storage-access-under-opener.html   2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -1,69 +0,0 @@
</span><del>-<!DOCTYPE html>
-<html>
-<head>
-    <script src="/js-test-resources/js-test.js"></script>
-    <script src="/resourceLoadStatistics/resources/util.js"></script>
-</head>
-<body onload="run()">
-<script>
-    description("Tests that a cross-origin window from a prevalent domain with non-recent user interaction gets immediate storage access under its opener.");
-    jsTestIsAsync = true;
-
-    function finishTest() {
-        setEnableFeature(false, finishJSTest);
-    }
-
-    function openIframe(url, onLoadHandler) {
-        const element = document.createElement("iframe");
-        element.src = url;
-        if (onLoadHandler) {
-            element.onload = onLoadHandler;
-        }
-        document.body.appendChild(element);
-    }
-
-    function receiveMessage(event) {
-        if (event.origin === "http://localhost:8000") {
-            if (event.data.indexOf("PASS") !== -1)
-                testPassed(event.data.replace("PASS ", ""));
-            else
-                testFailed(event.data);
-        } else
-            testFailed("Received a message from an unexpected origin: " + event.origin);
-
-        newWin.close();
-        openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should receive first-party cookie.", finishTest);
-    }
-
-    const thirdPartyOrigin = "http://localhost:8000";
-    const resourcePath = "/storageAccess/resources";
-    const thirdPartyBaseUrl = thirdPartyOrigin + resourcePath;
-    const firstPartyCookieName = "firstPartyCookie";
-    const subPathToGetCookies = "/get-cookies.php?name1=" + firstPartyCookieName;
-    var newWin;
-
-    function run() {
-        setEnableFeature(true, function() {
-            window.addEventListener("message", receiveMessage, false);
-
-            testRunner.setCanOpenWindows();
-
-            testRunner.setStatisticsPrevalentResource(thirdPartyOrigin, true, function() {
-                if (!testRunner.isStatisticsPrevalentResource(thirdPartyOrigin))
-                    testFailed("Host did not get set as prevalent resource.");
-                testRunner.setStatisticsHasHadUserInteraction(thirdPartyOrigin, true, function() {
-                    if (!testRunner.isStatisticsHasHadUserInteraction(thirdPartyOrigin))
-                        testFailed("Host did not get logged for user interaction.");
-                    testRunner.dumpChildFramesAsText();
-                    testRunner.setCloseRemainingWindowsWhenComplete(true);
-
-                    testRunner.statisticsUpdateCookieBlocking(function () {
-                        newWin = window.open(thirdPartyOrigin + "/storageAccess/resources/set-cookie-and-report-back.html", "testWindow");
-                    });
-                });
-            });
-        });
-    }
-</script>
-</body>
-</html>
</del><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestsplatformiosTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios/TestExpectations (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios/TestExpectations  2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/LayoutTests/platform/ios/TestExpectations     2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -2820,7 +2820,7 @@
</span><span class="cx"> http/tests/resourceLoadStatistics/strip-referrer-to-origin-for-prevalent-subresource-redirects.html [ Pass ]
</span><span class="cx"> http/tests/resourceLoadStatistics/strip-referrer-to-origin-for-prevalent-subresource-requests.html [ Pass ]
</span><span class="cx"> http/tests/storageAccess/deny-storage-access-under-opener.html [ Pass ]
</span><del>-http/tests/storageAccess/grant-storage-access-under-opener.html [ Pass ]
</del><ins>+http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html [ Pass ]
</ins><span class="cx"> http/tests/resourceLoadStatistics/cap-cache-max-age-for-prevalent-resource.html [ Pass ]
</span><span class="cx"> http/tests/cookies/capped-lifetime-for-cookie-set-in-js.html [ Pass ]
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsplatformioswk2TestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-wk2/TestExpectations      2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/LayoutTests/platform/ios-wk2/TestExpectations 2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -1255,9 +1255,6 @@
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/182144 [ Debug ] webgl/1.0.3/conformance/rendering/many-draw-calls.html [ Skip ]
</span><span class="cx"> 
</span><del>-# This is marked as Pass to see if additional logging can reveal the cause of the flakiness.
-webkit.org/b/183714 [ Debug ] http/tests/storageAccess/grant-storage-access-under-opener.html [ Pass ]
-
</del><span class="cx"> webkit.org/b/183860 http/wpt/service-workers/third-party-registration.html [ Pass Timeout ]
</span><span class="cx"> 
</span><span class="cx"> webkit.org/b/184245 http/tests/workers/service/service-worker-cache-api.https.html [ Pass Failure ]
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacwk2TestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-wk2/TestExpectations      2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations 2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -712,7 +712,7 @@
</span><span class="cx"> [ HighSierra+ ] http/tests/storageAccess/request-and-grant-access-then-navigate-cross-site-should-not-have-access.html [ Pass ]
</span><span class="cx"> [ HighSierra+ ] http/tests/storageAccess/request-and-grant-access-then-navigate-same-site-should-have-access.html [ Pass ]
</span><span class="cx"> [ HighSierra+ ] http/tests/storageAccess/deny-storage-access-under-opener.html [ Pass ]
</span><del>-[ HighSierra+ ] http/tests/storageAccess/grant-storage-access-under-opener.html [ Pass ]
</del><ins>+[ HighSierra+ ] http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html [ Pass ]
</ins><span class="cx"> 
</span><span class="cx"> # As of https://trac.webkit.org/changeset/227762 the timestampResolution is just 5 seconds which makes this test flaky
</span><span class="cx"> http/tests/resourceLoadStatistics/user-interaction-only-reported-once-within-short-period-of-time.html [ Skip ]
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog   2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebCore/ChangeLog      2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -1,3 +1,30 @@
</span><ins>+2018-09-27  John Wilander  <wilander@apple.com>
+
+        Resource Load Statistics: Remove temporary compatibility fix for auto-dismiss popups
+        https://bugs.webkit.org/show_bug.cgi?id=189980
+        <rdar://problem/44780645>
+
+        Reviewed by Alex Christensen.
+
+        Test: http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss.html
+
+        The change in https://bugs.webkit.org/show_bug.cgi?id=183620 was a temporary
+        compatibility fix as explained in:
+        https://webkit.org/blog/8311/intelligent-tracking-prevention-2-0/. We should
+        remove it.
+
+        Most of these changes remove the parameter isTriggeredByUserGesture since it's no longer needed.
+
+        * loader/ResourceLoadObserver.cpp:
+        (WebCore::ResourceLoadObserver::setRequestStorageAccessUnderOpenerCallback):
+        (WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution):
+        (WebCore::ResourceLoadObserver::requestStorageAccessUnderOpener):
+        (WebCore::ResourceLoadObserver::logWindowCreation): Deleted.
+        * loader/ResourceLoadObserver.h:
+        * page/DOMWindow.cpp:
+        (WebCore::DOMWindow::createWindow):
+            Now no longer logs anything to ResourceLoadObserver.
+
</ins><span class="cx"> 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r236557.
</span></span></pre></div>
<a id="trunkSourceWebCoreloaderResourceLoadObservercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/loader/ResourceLoadObserver.cpp (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/loader/ResourceLoadObserver.cpp     2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebCore/loader/ResourceLoadObserver.cpp        2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -63,7 +63,7 @@
</span><span class="cx">     m_notificationCallback = WTFMove(notificationCallback);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void ResourceLoadObserver::setRequestStorageAccessUnderOpenerCallback(WTF::Function<void(const String& domainInNeedOfStorageAccess, uint64_t openerPageID, const String& openerDomain, bool isTriggeredByUserGesture)>&& callback)
</del><ins>+void ResourceLoadObserver::setRequestStorageAccessUnderOpenerCallback(WTF::Function<void(const String& domainInNeedOfStorageAccess, uint64_t openerPageID, const String& openerDomain)>&& callback)
</ins><span class="cx"> {
</span><span class="cx">     ASSERT(!m_requestStorageAccessUnderOpenerCallback);
</span><span class="cx">     m_requestStorageAccessUnderOpenerCallback = WTFMove(callback);
</span><span class="lines">@@ -184,7 +184,7 @@
</span><span class="cx">         if (auto* openerDocument = opener->document()) {
</span><span class="cx">             if (auto* openerFrame = openerDocument->frame()) {
</span><span class="cx">                 if (auto openerPageID = openerFrame->loader().client().pageID()) {
</span><del>-                    requestStorageAccessUnderOpener(domain, openerPageID.value(), *openerDocument, true);
</del><ins>+                    requestStorageAccessUnderOpener(domain, openerPageID.value(), *openerDocument);
</ins><span class="cx">                 }
</span><span class="cx">             }
</span><span class="cx">         }
</span><span class="lines">@@ -216,19 +216,8 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void ResourceLoadObserver::logWindowCreation(const URL& popupUrl, uint64_t openerPageID, Document& openerDocument)
-{
</del><span class="cx"> #if ENABLE(RESOURCE_LOAD_STATISTICS)
</span><del>-    requestStorageAccessUnderOpener(primaryDomain(popupUrl), openerPageID, openerDocument, false);
-#else
-    UNUSED_PARAM(popupUrl);
-    UNUSED_PARAM(openerPageID);
-    UNUSED_PARAM(openerDocument);
-#endif
-}
-
-#if ENABLE(RESOURCE_LOAD_STATISTICS)
-void ResourceLoadObserver::requestStorageAccessUnderOpener(const String& domainInNeedOfStorageAccess, uint64_t openerPageID, Document& openerDocument, bool isTriggeredByUserGesture)
</del><ins>+void ResourceLoadObserver::requestStorageAccessUnderOpener(const String& domainInNeedOfStorageAccess, uint64_t openerPageID, Document& openerDocument)
</ins><span class="cx"> {
</span><span class="cx">     auto openerUrl = openerDocument.url();
</span><span class="cx">     auto openerPrimaryDomain = primaryDomain(openerUrl);
</span><span class="lines">@@ -235,10 +224,9 @@
</span><span class="cx">     if (domainInNeedOfStorageAccess != openerPrimaryDomain
</span><span class="cx">         && !openerDocument.hasRequestedPageSpecificStorageAccessWithUserInteraction(domainInNeedOfStorageAccess)
</span><span class="cx">         && !equalIgnoringASCIICase(openerUrl.string(), blankURL())) {
</span><del>-        m_requestStorageAccessUnderOpenerCallback(domainInNeedOfStorageAccess, openerPageID, openerPrimaryDomain, isTriggeredByUserGesture);
</del><ins>+        m_requestStorageAccessUnderOpenerCallback(domainInNeedOfStorageAccess, openerPageID, openerPrimaryDomain);
</ins><span class="cx">         // Remember user interaction-based requests since they don't need to be repeated.
</span><del>-        if (isTriggeredByUserGesture)
-            openerDocument.setHasRequestedPageSpecificStorageAccessWithUserInteraction(domainInNeedOfStorageAccess);
</del><ins>+        openerDocument.setHasRequestedPageSpecificStorageAccessWithUserInteraction(domainInNeedOfStorageAccess);
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCoreloaderResourceLoadObserverh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/loader/ResourceLoadObserver.h (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/loader/ResourceLoadObserver.h       2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebCore/loader/ResourceLoadObserver.h  2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -59,7 +59,6 @@
</span><span class="cx">     void logSubresourceLoading(const Frame*, const ResourceRequest& newRequest, const ResourceResponse& redirectResponse);
</span><span class="cx">     void logWebSocketLoading(const URL& targetURL, const URL& mainFrameURL, bool usesEphemeralSession);
</span><span class="cx">     void logUserInteractionWithReducedTimeResolution(const Document&);
</span><del>-    void logWindowCreation(const URL& popupUrl, uint64_t openerPageID, Document& openerDocument);
</del><span class="cx">     
</span><span class="cx">     void logFontLoad(const Document&, const String& familyName, bool loadStatus);
</span><span class="cx">     void logCanvasRead(const Document&);
</span><span class="lines">@@ -70,7 +69,7 @@
</span><span class="cx">     WEBCORE_EXPORT String statisticsForOrigin(const String&);
</span><span class="cx"> 
</span><span class="cx">     WEBCORE_EXPORT void setNotificationCallback(WTF::Function<void (Vector<ResourceLoadStatistics>&&)>&&);
</span><del>-    WEBCORE_EXPORT void setRequestStorageAccessUnderOpenerCallback(WTF::Function<void(const String&, uint64_t, const String&, bool)>&&);
</del><ins>+    WEBCORE_EXPORT void setRequestStorageAccessUnderOpenerCallback(WTF::Function<void(const String&, uint64_t, const String&)>&&);
</ins><span class="cx"> 
</span><span class="cx">     WEBCORE_EXPORT void notifyObserver();
</span><span class="cx">     WEBCORE_EXPORT void clearState();
</span><span class="lines">@@ -90,13 +89,13 @@
</span><span class="cx">     Vector<ResourceLoadStatistics> takeStatistics();
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(RESOURCE_LOAD_STATISTICS)
</span><del>-    void requestStorageAccessUnderOpener(const String& domainInNeedOfStorageAccess, uint64_t openerPageID, Document& openerDocument, bool isTriggeredByUserGesture);
</del><ins>+    void requestStorageAccessUnderOpener(const String& domainInNeedOfStorageAccess, uint64_t openerPageID, Document& openerDocument);
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     HashMap<String, ResourceLoadStatistics> m_resourceStatisticsMap;
</span><span class="cx">     HashMap<String, WTF::WallTime> m_lastReportedUserInteractionMap;
</span><span class="cx">     WTF::Function<void (Vector<ResourceLoadStatistics>&&)> m_notificationCallback;
</span><del>-    WTF::Function<void(const String&, uint64_t, const String&, bool)> m_requestStorageAccessUnderOpenerCallback;
</del><ins>+    WTF::Function<void(const String&, uint64_t, const String&)> m_requestStorageAccessUnderOpenerCallback;
</ins><span class="cx">     Timer m_notificationTimer;
</span><span class="cx"> #if ENABLE(RESOURCE_LOAD_STATISTICS) && !RELEASE_LOG_DISABLED
</span><span class="cx">     uint64_t m_loggingCounter { 0 };
</span></span></pre></div>
<a id="trunkSourceWebCorepageDOMWindowcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/DOMWindow.cpp (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/DOMWindow.cpp  2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebCore/page/DOMWindow.cpp     2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -2283,13 +2283,6 @@
</span><span class="cx">         FrameLoader::addSameSiteInfoToRequestIfNeeded(resourceRequest, openerFrame.document());
</span><span class="cx">         FrameLoadRequest frameLoadRequest { *activeWindow.document(), activeWindow.document()->securityOrigin(), resourceRequest, "_self"_s, LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, activeDocument->shouldOpenExternalURLsPolicyToPropagate(), initiatedByMainFrame };
</span><span class="cx">         newFrame->loader().changeLocation(WTFMove(frameLoadRequest));
</span><del>-
-#if ENABLE(RESOURCE_LOAD_STATISTICS)
-        if (auto openerDocument = openerFrame.document()) {
-            if (auto openerPageID = openerFrame.loader().client().pageID())
-                ResourceLoadObserver::shared().logWindowCreation(completedURL, openerPageID.value(), *openerDocument);
-        }
-#endif
</del><span class="cx">     } else if (!urlString.isEmpty()) {
</span><span class="cx">         LockHistory lockHistory = UserGestureIndicator::processingUserGesture() ? LockHistory::No : LockHistory::Yes;
</span><span class="cx">         newFrame->navigationScheduler().scheduleLocationChange(*activeDocument, activeDocument->securityOrigin(), completedURL, referrer, lockHistory, LockBackForwardList::No);
</span></span></pre></div>
<a id="trunkSourceWebKitChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/ChangeLog (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/ChangeLog    2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/ChangeLog       2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -1,3 +1,28 @@
</span><ins>+2018-09-27  John Wilander  <wilander@apple.com>
+
+        Resource Load Statistics: Remove temporary compatibility fix for auto-dismiss popups
+        https://bugs.webkit.org/show_bug.cgi?id=189980
+        <rdar://problem/44780645>
+
+        Reviewed by Alex Christensen.
+
+        The change in https://bugs.webkit.org/show_bug.cgi?id=183620 was a temporary
+        compatibility fix as explained in:
+        https://webkit.org/blog/8311/intelligent-tracking-prevention-2-0/. We should
+        remove it.
+
+        These changes remove the parameter isTriggeredByUserGesture since it's no longer needed.
+
+        * UIProcess/ResourceLoadStatisticsMemoryStore.cpp:
+        (WebKit::ResourceLoadStatisticsMemoryStore::requestStorageAccessUnderOpener):
+        * UIProcess/ResourceLoadStatisticsMemoryStore.h:
+        * UIProcess/WebResourceLoadStatisticsStore.cpp:
+        (WebKit::WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener):
+        * UIProcess/WebResourceLoadStatisticsStore.h:
+        * UIProcess/WebResourceLoadStatisticsStore.messages.in:
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::WebProcess):
+
</ins><span class="cx"> 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r236557.
</span></span></pre></div>
<a id="trunkSourceWebKitUIProcessResourceLoadStatisticsMemoryStorecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.cpp (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.cpp      2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.cpp 2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -428,7 +428,7 @@
</span><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void ResourceLoadStatisticsMemoryStore::requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain, bool isTriggeredByUserGesture)
</del><ins>+void ResourceLoadStatisticsMemoryStore::requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain)
</ins><span class="cx"> {
</span><span class="cx">     ASSERT(primaryDomainInNeedOfStorageAccess != openerPrimaryDomain);
</span><span class="cx">     ASSERT(!RunLoop::isMain());
</span><span class="lines">@@ -439,16 +439,12 @@
</span><span class="cx">     auto& domainInNeedOfStorageAccessStatistic = ensureResourceStatisticsForPrimaryDomain(primaryDomainInNeedOfStorageAccess);
</span><span class="cx">     auto cookiesBlockedAndPurged = shouldBlockAndPurgeCookies(domainInNeedOfStorageAccessStatistic);
</span><span class="cx"> 
</span><del>-    // There are no cookies to get access to if the domain has its cookies blocked and did not get user interaction now.
-    if (cookiesBlockedAndPurged && !isTriggeredByUserGesture)
-        return;
-
</del><span class="cx">     // The domain already has access if its cookies are not blocked.
</span><span class="cx">     if (!cookiesBlockedAndPurged && !shouldBlockAndKeepCookies(domainInNeedOfStorageAccessStatistic))
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx"> #if !RELEASE_LOG_DISABLED
</span><del>-    RELEASE_LOG_INFO_IF(m_debugLoggingEnabled, ResourceLoadStatisticsDebug, "[Temporary combatibility fix] Storage access was granted for %{public}s under opener page from %{public}s, %{public}s user interaction in the opened window.", primaryDomainInNeedOfStorageAccess.utf8().data(), openerPrimaryDomain.utf8().data(), (isTriggeredByUserGesture ? "with" : "without"));
</del><ins>+    RELEASE_LOG_INFO_IF(m_debugLoggingEnabled, ResourceLoadStatisticsDebug, "[Temporary combatibility fix] Storage access was granted for %{public}s under opener page from %{public}s, with user interaction in the opened window.", primaryDomainInNeedOfStorageAccess.utf8().data(), openerPrimaryDomain.utf8().data());
</ins><span class="cx"> #endif
</span><span class="cx">     grantStorageAccessInternal(WTFMove(primaryDomainInNeedOfStorageAccess), WTFMove(openerPrimaryDomain), std::nullopt, openerPageID, false, [](bool) { });
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKitUIProcessResourceLoadStatisticsMemoryStoreh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.h (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.h        2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/UIProcess/ResourceLoadStatisticsMemoryStore.h   2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -72,7 +72,7 @@
</span><span class="cx">     void includeTodayAsOperatingDateIfNecessary();
</span><span class="cx">     void processStatisticsAndDataRecords();
</span><span class="cx"> 
</span><del>-    void requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain, bool isTriggeredByUserGesture);
</del><ins>+    void requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain);
</ins><span class="cx">     void removeAllStorageAccess(CompletionHandler<void()>&&);
</span><span class="cx"> 
</span><span class="cx">     void grandfatherExistingWebsiteData(CompletionHandler<void()>&&);
</span></span></pre></div>
<a id="trunkSourceWebKitUIProcessWebResourceLoadStatisticsStorecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp 2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp    2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -276,7 +276,7 @@
</span><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain, bool isTriggeredByUserGesture)
</del><ins>+void WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain)
</ins><span class="cx"> {
</span><span class="cx">     ASSERT(RunLoop::isMain());
</span><span class="cx"> 
</span><span class="lines">@@ -283,9 +283,9 @@
</span><span class="cx">     // It is safe to move the strings to the background queue without isolated copy here because they are r-value references
</span><span class="cx">     // coming from IPC. Strings which are safe to move to other threads as long as nobody on this thread holds a reference
</span><span class="cx">     // to those strings.
</span><del>-    postTask([this, primaryDomainInNeedOfStorageAccess = WTFMove(primaryDomainInNeedOfStorageAccess), openerPageID, openerPrimaryDomain = WTFMove(openerPrimaryDomain), isTriggeredByUserGesture]() mutable {
</del><ins>+    postTask([this, primaryDomainInNeedOfStorageAccess = WTFMove(primaryDomainInNeedOfStorageAccess), openerPageID, openerPrimaryDomain = WTFMove(openerPrimaryDomain)]() mutable {
</ins><span class="cx">         if (m_memoryStore)
</span><del>-            m_memoryStore->requestStorageAccessUnderOpener(WTFMove(primaryDomainInNeedOfStorageAccess), openerPageID, WTFMove(openerPrimaryDomain), isTriggeredByUserGesture);
</del><ins>+            m_memoryStore->requestStorageAccessUnderOpener(WTFMove(primaryDomainInNeedOfStorageAccess), openerPageID, WTFMove(openerPrimaryDomain));
</ins><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKitUIProcessWebResourceLoadStatisticsStoreh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h   2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h      2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -153,7 +153,7 @@
</span><span class="cx"> 
</span><span class="cx">     // IPC message handlers.
</span><span class="cx">     void resourceLoadStatisticsUpdated(Vector<WebCore::ResourceLoadStatistics>&& origins);
</span><del>-    void requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain, bool isTriggeredByUserGesture);
</del><ins>+    void requestStorageAccessUnderOpener(String&& primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&& openerPrimaryDomain);
</ins><span class="cx"> 
</span><span class="cx">     void performDailyTasks();
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKitUIProcessWebResourceLoadStatisticsStoremessagesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.messages.in (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.messages.in 2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.messages.in    2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -21,6 +21,6 @@
</span><span class="cx"> # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</span><span class="cx"> 
</span><span class="cx"> messages -> WebResourceLoadStatisticsStore {
</span><del>-    RequestStorageAccessUnderOpener(String domainReceivingUserInteraction, uint64_t openerPageID, String openerDomain, bool isTriggeredByUserGesture)
</del><ins>+    RequestStorageAccessUnderOpener(String domainReceivingUserInteraction, uint64_t openerPageID, String openerDomain)
</ins><span class="cx">     ResourceLoadStatisticsUpdated(Vector<WebCore::ResourceLoadStatistics> origins)
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKitWebProcessWebProcesscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/WebProcess/WebProcess.cpp (236562 => 236563)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/WebProcess/WebProcess.cpp    2018-09-27 19:00:13 UTC (rev 236562)
+++ trunk/Source/WebKit/WebProcess/WebProcess.cpp       2018-09-27 19:40:16 UTC (rev 236563)
</span><span class="lines">@@ -205,8 +205,8 @@
</span><span class="cx">         parentProcessConnection()->send(Messages::WebResourceLoadStatisticsStore::ResourceLoadStatisticsUpdated(WTFMove(statistics)), 0);
</span><span class="cx">     });
</span><span class="cx"> 
</span><del>-    ResourceLoadObserver::shared().setRequestStorageAccessUnderOpenerCallback([this] (const String& domainInNeedOfStorageAccess, uint64_t openerPageID, const String& openerDomain, bool isTriggeredByUserGesture) {
-        parentProcessConnection()->send(Messages::WebResourceLoadStatisticsStore::RequestStorageAccessUnderOpener(domainInNeedOfStorageAccess, openerPageID, openerDomain, isTriggeredByUserGesture), 0);
</del><ins>+    ResourceLoadObserver::shared().setRequestStorageAccessUnderOpenerCallback([this] (const String& domainInNeedOfStorageAccess, uint64_t openerPageID, const String& openerDomain) {
+        parentProcessConnection()->send(Messages::WebResourceLoadStatisticsStore::RequestStorageAccessUnderOpener(domainInNeedOfStorageAccess, openerPageID, openerDomain), 0);
</ins><span class="cx">     });
</span><span class="cx">     
</span><span class="cx">     Gigacage::disableDisablingPrimitiveGigacageIfShouldBeEnabled();
</span></span></pre>
</div>
</div>

</body>
</html>