From 3bddaad9daf1660a2d6fcee4ed5d6fa37645b153 Mon Sep 17 00:00:00 2001 From: Claudio DeSouza Date: Thu, 26 Jan 2023 15:34:57 +0000 Subject: [PATCH] Reanchoring BroadcastChannel overrides Chromium change: https://chromium.googlesource.com/chromium/src/+/48762ae06d8de05d3dc8ef727d04eaa223901786 commit 48762ae06d8de05d3dc8ef727d04eaa223901786 Author: Noam Rosenthal Date: Thu Jan 12 19:08:43 2023 +0000 Refactor nested-navigations resource-timing flow This changes how frames, iframes & objects decide how to report their navigations as resource timing entries to their parent: - Any frame-initiated navigation (e.g. iframe.src change) is reported as an entry. This complies with current spec. - For nested navigations that fail Timing-Allow-Origin, we don't report the normal responseEnd - instead we report the load event time as the responseEnd, to prevent leakage of navigation-related cross-origin information (see https://github.com/w3c/resource-timing/issues/340) This incidentally fixes other existing issues with nested navigations and resource timing, such as flaky tests and inconsistencies regarding restored iframes. Bug: 1404695 Bug: 1348080 Bug: 1290721 Bug: 1380078 Bug: 1378015 Bug: 957181 Spec changes: https://github.com/whatwg/html/pull/8643 https://github.com/whatwg/fetch/pull/1579 --- .../renderer/modules/broadcastchannel/broadcast_channel.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium_src/third_party/blink/renderer/modules/broadcastchannel/broadcast_channel.cc b/chromium_src/third_party/blink/renderer/modules/broadcastchannel/broadcast_channel.cc index 1ef871bb81f5a..39ab4fa4d14ee 100644 --- a/chromium_src/third_party/blink/renderer/modules/broadcastchannel/broadcast_channel.cc +++ b/chromium_src/third_party/blink/renderer/modules/broadcastchannel/broadcast_channel.cc @@ -30,7 +30,7 @@ String GetEphemeralBroadcastChannelName(LocalDOMWindow* window, String name) { // the worker is using. // The name change is applied only while connecting. #define GetRemoteNavigationAssociatedInterfaces \ - should_send_resource_timing_info_to_parent(); /* no-op */ \ + RemoteMainFrameIntersection(); /* no-op */ \ base::AutoReset ephemeral_name_auto_reset( \ &name_, GetEphemeralBroadcastChannelName(window, name_)); \ frame->GetRemoteNavigationAssociatedInterfaces