Bug 293321
| Summary: | Fix some pages with COOP: same-origin header getting a same-site process from cache | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | zak ridouh <zakr> |
| Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
zak ridouh
For this loading issue:
1. Navigate to site1.example.com (which has COOP: same-origin)
2. Then to site2.example.com (same domain, different origin)
3. Go back to site1.example.com (we've put site2.example.com into the process cache, since we needed to load site1.example.com in a new process to fulfill the Cross-Origin-Opener-Policy: same-origin header)
4. Open a new tab, go to site1.example.com again
5. Navigate to any other site not on example.com
6. Click back to site1.example.com
Now, at step 6 we will enter into a process swap loop, since we know from the network process that we need to be in an isolated process, but the UI process's WebProcessPool selection logic accidentally keeps giving us the site2.example.com process, which is NOT the same origin, thus we can't load in.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
zak ridouh
Radar: <rdar://150643925>
zak ridouh
<rdar://problem/150643925>
zak ridouh
Pull request: https://github.com/WebKit/WebKit/pull/45664
EWS
Committed 295891@main (54120658172b): <https://commits.webkit.org/295891@main>
Reviewed commits have been landed. Closing PR #45664 and removing active labels.