dimich@chromium.org | 912f290 | 2010-03-06 03:16:50 +0000 | [diff] [blame] | 1 | <script> |
| 2 | var w; |
| 3 | function clear() { |
| 4 | w.clearTimeout(153); |
| 5 | } |
| 6 | |
| 7 | function test() { |
| 8 | w = window.open("data:text/html,"+ |
| 9 | "<script>" + |
| 10 | "function navigate() { location.href='data:text/html,<body>Close this page and wait.</body>'};" + |
| 11 | "setTimeout(navigate,0);</" + |
| 12 | "script>"); |
| 13 | |
| 14 | setInterval(clear, 0); |
| 15 | } |
| 16 | </script> |
| 17 | <body> |
| 18 | <p>This test reproduces the crash in DOMWindow::clearTimeout that happens when DOMWindow is disconnected from the Frame (as in back/forward cache expiration case tested here). |
| 19 | <p>This is the link to the bug: <a href="https://bugs.webkit.org/show_bug.cgi?id=29832">https://bugs.webkit.org/show_bug.cgi?id=29832</a> |
| 20 | <p>To reproduce the crash, click the link below, the popup window opens, which will immediately navigate to another one, so the b/f cache entry will be created. Close the popup window. Wait a few seconds (~10), for the page cache to start deleting pages it doesn't need - crash will happen.<br><a href="javascript:test()">Crash me!</a> |