| <!DOCTYPE html> |
| <html> |
| <head> |
| <script src="/js-test-resources/js-test-pre.js"></script> |
| <script src="/media-resources/video-test.js"></script> |
| <script type="text/javascript"> |
| function onSourceOpen(e) |
| { |
| consoleWrite("Calling addSourceBuffer()"); |
| e.target.addSourceBuffer('video/webm;codecs="vp8"'); |
| |
| consoleWrite("Running garbage collector to cleanup the SourceBuffer reference returned by addSourceBuffer()"); |
| gc(); |
| |
| document.querySelector('#v').src = ""; |
| } |
| |
| function onSourceClose(e) |
| { |
| consoleWrite("onSourceClose"); |
| endTest(); |
| } |
| |
| function main() |
| { |
| var video = document.querySelector('#v'); |
| var mediaSource = new WebKitMediaSource(); |
| |
| mediaSource.addEventListener('webkitsourceopen', onSourceOpen); |
| mediaSource.addEventListener('webkitsourceclose', onSourceClose); |
| |
| video.src = URL.createObjectURL(mediaSource); |
| } |
| </script> |
| </head> |
| <body onload="main()"> |
| <video id="v"></video> |
| <p>Verify that we don't crash on close if the MediaSource.sourceBuffers holds the last reference to its SourceBuffer objects.</p> |
| </body> |
| </html> |