| <html> |
| <head> |
| <script> |
| var blob = new Blob([]); |
| var url = null; |
| var count = 0; |
| |
| if (!window.gc) |
| { |
| window.gc = function() |
| { |
| if (window.GCController) |
| return GCController.collect(); |
| for (var i = 0; i < 10000; i++) |
| var s = new String("abc"); |
| } |
| } |
| |
| function load() |
| { |
| if (window.testRunner) |
| { |
| testRunner.dumpAsText(); |
| testRunner.setCanOpenWindows(); |
| testRunner.waitUntilDone(); |
| } |
| win = window.open(); |
| if (win.URL) |
| { |
| url = win.URL; |
| win.location = "nothing"; |
| setTimeout(crash, 0); |
| return; |
| } |
| document.body.innerHTML = "PASS"; |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| } |
| |
| function crash() |
| { |
| gc(); |
| url.createObjectURL(blob); |
| if (count++ < 5) |
| { |
| setTimeout(crash, 0); |
| return; |
| } |
| document.body.innerHTML = "PASS"; |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| } |
| </script> |
| </head> |
| <body onload="load()"> |
| RUNNING... |
| </body> |
| </html> |
| |