Bug 1358401. P2 - use the 'once' handler to remove the |firstOpen| check. draft
authorJW Wang <jwwang@mozilla.com>
Wed, 19 Apr 2017 15:19:33 +0800
changeset 566253 3995b797ac81e83f80908a5f7aaf1cbb3aacd95c
parent 566252 2cb596a3efb58271e605ac7cf8d0a9659089baf1
child 566254 d23a44705268d21d99c794054293ed2b5ec52e84
push id55168
push userjwwang@mozilla.com
push dateFri, 21 Apr 2017 08:39:02 +0000
bugs1358401
milestone55.0a1
Bug 1358401. P2 - use the 'once' handler to remove the |firstOpen| check. MozReview-Commit-ID: Ezp0dM1VXco
dom/media/test/eme.js
--- a/dom/media/test/eme.js
+++ b/dom/media/test/eme.js
@@ -237,39 +237,32 @@ function LoadTest(test, elem, token, loa
     ok(false, token + " test does not have a tracks list");
     return Promise.reject();
   }
 
   var ms = new MediaSource();
   elem.src = URL.createObjectURL(ms);
 
   return new Promise(function (resolve, reject) {
-    var firstOpen = true;
     ms.addEventListener("sourceopen", function () {
-      if (!firstOpen) {
-        Log(token, "sourceopen again?");
-        return;
-      }
-
-      firstOpen = false;
       Log(token, "sourceopen");
       return Promise.all(test.tracks.map(function(track) {
         return AppendTrack(test, ms, track, token, loadParams);
       })).then(function() {
         if (loadParams && loadParams.noEndOfStream) {
           Log(token, "Tracks loaded");
         } else {
           Log(token, "Tracks loaded, calling MediaSource.endOfStream()");
           ms.endOfStream();
         }
         resolve();
       }).catch(function() {
         Log(token, "error while loading tracks");
       });
-    })
+    }, {once: true});
   });
 }
 
 function EMEPromise() {
   var self = this;
   self.promise = new Promise(function(resolve, reject) {
     self.resolve = resolve;
     self.reject = reject;