Bug 255682
Summary: | [REGRESSION][WPE] requestAnimationFrame stops before script initiated navigation is committed | ||
---|---|---|---|
Product: | WebKit | Reporter: | Yury Semikhatsky <yurys> |
Component: | WPE WebKit | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | aperez, bugs-noreply, dpino, max, sviatsv |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Yury Semikhatsky
Steps to reproduce:
1. Bring up a web servert that would just hang on requests to http://127.0.0.1/slow.html
2. Navigate to a page with the following content:
```
<body>
<script>
let i = 1;
const print = () => {
document.body.textContent = ('raf #' + i);
console.log('raf #' + i);
i++;
if (i === 5) {
location.href = 'http://127.0.0.1/slow.html';
}
requestAnimationFrame(print);
}
print();
</script>
</body>
```
Expected: page keeps running rAF's before new navigation is committed.
Actual: rAF's stop soon after provisional navigation is started.
Note: this has to do with libwpe/wpebackend-fdo. It worked with libwpe-1.8.0/wpebackend-fdo-1.8.0 and stopped working after switching the deps to libwpe-1.14.0/wpebackend-fdo-1.14.0.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Yury Semikhatsky
It seems that it regressed somewhere between wpebackend-fdo 1.8.0 (good) and 1.8.4 (broken).
Yury Semikhatsky
Ok, I pinpointed it to https://github.com/Igalia/WPEBackend-fdo/compare/1.8.2...1.8.3 which is basically this commit: https://github.com/Igalia/WPEBackend-fdo/commit/1a4fd5f0ac3d759867301e7b7366f71e2a501630
@aperez can you have a look?