Bug 1304948 - part3: Add testcase. r=rillian draft
authorbechen <bechen@mozilla.com>
Thu, 29 Sep 2016 17:46:52 +0800
changeset 418939 c32d1afe6bb03615bebb37a3448582582105a6a3
parent 417383 29beaebdfaccbdaeb4c1ee5a43a9795ab015ef49
child 418940 a508c37d244f16146ed01fba6bc4702f5b11c4f7
push id30806
push userbechen@mozilla.com
push dateThu, 29 Sep 2016 09:48:00 +0000
reviewersrillian
bugs1304948
milestone52.0a1
Bug 1304948 - part3: Add testcase. r=rillian MozReview-Commit-ID: DHT8B5ULA1i
dom/media/test/crashtests/1304948.html
dom/media/test/crashtests/crashtests.list
new file mode 100644
--- /dev/null
+++ b/dom/media/test/crashtests/1304948.html
@@ -0,0 +1,33 @@
+<html class="reftest-wait">
+<head>
+  <title> Bug 1304948 : Crash if a texttrack remove a cue not belongs to it. </title>
+</head>
+<meta charset="utf-8">
+<script type="text/javascript">
+
+window.onload = function() {
+  var a = document.createElementNS('http://www.w3.org/1999/xhtml', 'video');
+  a.src = "";
+  document.body.appendChild(a);
+  var b = a.addTextTrack('chapters', "AAAAAAAAAAAAAAAA", "de");
+  var c = new VTTCue(0.6, 0.3, "AA");
+  b.addCue(c);
+  var d = document.createElementNS('http://www.w3.org/1999/xhtml', 'video');
+  var e = d.addTextTrack('chapters', "AAAA", "en-US");
+  a.currentTime = 2;
+  a.play();
+  try {
+    // This will queue a TimeMarchesOn task on mainthread, so use
+    // timer to wait the TimeMarchesOn crash.
+    e.removeCue(c);
+  } catch (e) {
+    if (e.name == "NotFoundError") {
+      setTimeout(function() {
+        document.documentElement.removeAttribute("class");}, 0);
+	  }
+  }
+};
+
+</script>
+</body>
+</html>
--- a/dom/media/test/crashtests/crashtests.list
+++ b/dom/media/test/crashtests/crashtests.list
@@ -77,16 +77,17 @@ load 1045650.html
 load 1080986.html
 load 1122218.html
 load 1127188.html
 load 1157994.html
 skip-if(!B2G) load 1158427.html
 load 1185176.html
 load 1185192.html
 load 1228484.html
+load 1304948.html
 load analyser-channels-1.html
 load audiocontext-double-suspend.html
 load buffer-source-duration-1.html
 load buffer-source-ended-1.html
 load buffer-source-resampling-start-1.html
 load doppler-1.html
 HTTP load media-element-source-seek-1.html
 load offline-buffer-source-ended-1.html