Revision 4e5f09f89e6f1976dd49a57ba46cd447c7e19a1e authored by Alex Moshchuk on 13 April 2018, 15:22:14 UTC, committed by Chromium WPT Sync on 13 April 2018, 15:22:14 UTC
Changes from original attempt at https://crrev.com/c/999182: - fix flakiness in two additional ChromeOS login tests - fix CSP WPT tests to not depend on ordering between iframe's onload and postMessage - see https://crbug.com/832319. Previously, we sent the IPC to forward a cross-process postMessage immediately. This caused a behavioral difference from the same-process case where the postMessage is always scheduled. Namely, in a scenario like this: frame.postMessage(...); doSomethingThatSendsIPCsToFrame(frame); the IPCs from JS following the postMessage would've been ordered incorrectly, causing |frame| to see their side effects after the postMessage dispatch in the cross-process case, whereas they would be seen before the postMessage dispatch in the same-process case. One example of this is frame.focus(), and another is a frame element onload event (dispatched via FrameHostMsg_DispatchLoad) arriving after a postMessage dispatched from an inline script while the frame was still loading. To resolve these ordering concerns, this CL changes cross-process postMessage to do a PostTask on the sender side before sending the message to the browser process. This improves the current state of the world, but does not yet achieve a perfect match for the IPC ordering in the same-process case - see discussion on the bug. Bug: 828529 Change-Id: I62a627c501526d09900be4f5bd2c899acf4d1e07 Reviewed-on: https://chromium-review.googlesource.com/999182 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Commit-Queue: Alex Moshchuk <alexmos@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#550284} Reviewed-on: https://chromium-review.googlesource.com/1011287 Cr-Commit-Position: refs/heads/master@{#550621}
1 parent f90d3d6
File | Mode | Size |
---|---|---|
Document-open.html | -rw-r--r-- | 2.0 KB |
OWNERS | -rw-r--r-- | 5 bytes |
addRange-00.html | -rw-r--r-- | 384 bytes |
addRange-04.html | -rw-r--r-- | 384 bytes |
addRange-08.html | -rw-r--r-- | 385 bytes |
addRange-12.html | -rw-r--r-- | 386 bytes |
addRange-16.html | -rw-r--r-- | 386 bytes |
addRange-20.html | -rw-r--r-- | 386 bytes |
addRange-24.html | -rw-r--r-- | 386 bytes |
addRange-28.html | -rw-r--r-- | 386 bytes |
addRange-32.html | -rw-r--r-- | 386 bytes |
addRange-36.html | -rw-r--r-- | 386 bytes |
addRange-40.html | -rw-r--r-- | 386 bytes |
addRange-44.html | -rw-r--r-- | 386 bytes |
addRange-48.html | -rw-r--r-- | 386 bytes |
addRange-52.html | -rw-r--r-- | 386 bytes |
addRange-56.html | -rw-r--r-- | 382 bytes |
addRange.htm | -rw-r--r-- | 953 bytes |
addRange.js | -rw-r--r-- | 10.6 KB |
collapse-00.html | -rw-r--r-- | 385 bytes |
collapse-15.html | -rw-r--r-- | 386 bytes |
collapse-30.html | -rw-r--r-- | 382 bytes |
collapse-45.html | -rw-r--r-- | 386 bytes |
collapse.htm | -rw-r--r-- | 899 bytes |
collapse.js | -rw-r--r-- | 4.1 KB |
collapseToStartEnd.html | -rw-r--r-- | 5.4 KB |
common.js | -rw-r--r-- | 38.1 KB |
deleteFromDocument.html | -rw-r--r-- | 4.3 KB |
dir-manual.html | -rw-r--r-- | 4.4 KB |
extend-00.html | -rw-r--r-- | 393 bytes |
extend-20.html | -rw-r--r-- | 394 bytes |
extend-40.html | -rw-r--r-- | 390 bytes |
extend.js | -rw-r--r-- | 7.1 KB |
getRangeAt.html | -rw-r--r-- | 443 bytes |
getSelection.html | -rw-r--r-- | 6.6 KB |
interfaces.html | -rw-r--r-- | 1.2 KB |
isCollapsed.html | -rw-r--r-- | 1.1 KB |
removeAllRanges.html | -rw-r--r-- | 2.3 KB |
removeRange.html | -rw-r--r-- | 1.8 KB |
selectAllChildren.html | -rw-r--r-- | 2.6 KB |
setBaseAndExtent.html | -rw-r--r-- | 5.3 KB |
test-iframe.html | -rw-r--r-- | 1.1 KB |
type.html | -rw-r--r-- | 918 bytes |
Computing file changes ...