Chrome Version: d46aa32b88c06ba76517c63eb96db3ff922988cd #573239
What steps will reproduce the problem?
(1) Navigate to https://document-write-didstoploading.glitch.me/
~~~
<html>
<body>
<script>
setTimeout(function(){
document.write("hello");
}, 0);
</script>
0) <script></script><div></div>
1) <script></script><div></div>
2) <script></script><div></div>
3) <script></script><div></div>
4) <script></script><div></div>
5) <script></script><div></div>
6) <script></script><div></div>
7) <script></script><div></div>
8) <script></script><div></div>
9) <script></script><div></div>
10) <script></script><div></div>
11) <script></script><div></div>
12) <script></script><div></div>
13) <script></script><div></div>
14) <script></script><div></div>
15) <script></script><div></div>
16) <script></script><div></div>
17) <script></script><div></div>
18) <script></script><div></div>
19) <script></script><div></div>
20) <script></script><div></div>
21) <script></script><div></div>
22) <script></script><div></div>
23) <script></script><div></div>
24) <script></script><div></div>
25) <script></script><div></div>
26) <script></script><div></div>
27) <script></script><div></div>
28) <script></script><div></div>
29) <script></script><div></div>
30) <script></script><div></div>
31) <script></script><div></div>
32) <script></script><div></div>
33) <script></script><div></div>
34) <script></script><div></div>
35) <script></script><div></div>
36) <script></script><div></div>
37) <script></script><div></div>
38) <script></script><div></div>
39) <script></script><div></div>
40) <script></script><div></div>
41) <script></script><div></div>
42) <script></script><div></div>
43) <script></script><div></div>
44) <script></script><div></div>
45) <script></script><div></div>
46) <script></script><div></div>
47) <script></script><div></div>
48) <script></script><div></div>
49) <script></script><div></div>
50) <script></script><div></div>
51) <script></script><div></div>
end
</body>
</html>
~~~
Then the document don't stop loading. The loading spinner is still spinning.
Note: Why >50 <script> and <div>? This relies on HTMLParserScheduler::ShouldYield() heuristics.
This bug is highly similar to https://crbug.com/855033
Chrome Version: d46aa32b88c06ba76517c63eb96db3ff922988cd #573239
What steps will reproduce the problem?
(1) Navigate to https://document-write-didstoploading.glitch.me/
~~~
<html>
<body>
<script>
setTimeout(function(){
document.write("hello");
}, 0);
</script>
0) <script></script><div></div>
1) <script></script><div></div>
2) <script></script><div></div>
3) <script></script><div></div>
4) <script></script><div></div>
5) <script></script><div></div>
6) <script></script><div></div>
7) <script></script><div></div>
8) <script></script><div></div>
9) <script></script><div></div>
10) <script></script><div></div>
11) <script></script><div></div>
12) <script></script><div></div>
13) <script></script><div></div>
14) <script></script><div></div>
15) <script></script><div></div>
16) <script></script><div></div>
17) <script></script><div></div>
18) <script></script><div></div>
19) <script></script><div></div>
20) <script></script><div></div>
21) <script></script><div></div>
22) <script></script><div></div>
23) <script></script><div></div>
24) <script></script><div></div>
25) <script></script><div></div>
26) <script></script><div></div>
27) <script></script><div></div>
28) <script></script><div></div>
29) <script></script><div></div>
30) <script></script><div></div>
31) <script></script><div></div>
32) <script></script><div></div>
33) <script></script><div></div>
34) <script></script><div></div>
35) <script></script><div></div>
36) <script></script><div></div>
37) <script></script><div></div>
38) <script></script><div></div>
39) <script></script><div></div>
40) <script></script><div></div>
41) <script></script><div></div>
42) <script></script><div></div>
43) <script></script><div></div>
44) <script></script><div></div>
45) <script></script><div></div>
46) <script></script><div></div>
47) <script></script><div></div>
48) <script></script><div></div>
49) <script></script><div></div>
50) <script></script><div></div>
51) <script></script><div></div>
end
</body>
</html>
~~~
Then the document never stop loading. The loading indicator is spinning forever.
Note: Why am I using 50 <script> and <div>? This relies on HTMLParserScheduler::ShouldYield() heuristics.
This bug is highly similar to https://crbug.com/855033
Comment 1 by arthurso...@chromium.org
, Jul 13