Backed out changeset be5d0598f77d (bug 1335029) for crashtest failures in 1185192.html a=backout CLOSED TREE
authorWes Kocher <wkocher@mozilla.com>
Wed, 30 Aug 2017 12:13:01 -0700
changeset 377823 f8e18499448edab80c1e6a0083b573a3e323975e
parent 377822 043653ff777987f0b881fcefe15610b796e1e3a0
child 377824 c0332f371039d2f10cd3a201caa5d9ce81c21805
push id94338
push userkwierso@gmail.com
push dateThu, 31 Aug 2017 02:58:58 +0000
treeherdermozilla-inbound@9ca18987dabb [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbackout
bugs1335029, 1185192
milestone57.0a1
backs outbe5d0598f77d0e1cf2ee1a6955a7f8958f4914a3
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset be5d0598f77d (bug 1335029) for crashtest failures in 1185192.html a=backout CLOSED TREE MozReview-Commit-ID: 9wzZ9KwfoDB
dom/media/MediaStreamGraph.cpp
--- a/dom/media/MediaStreamGraph.cpp
+++ b/dom/media/MediaStreamGraph.cpp
@@ -4010,32 +4010,20 @@ MediaStreamGraphImpl::ApplyAudioContextO
         driver = new SystemClockDriver(this);
         MonitorAutoLock lock(mMonitor);
         CurrentDriver()->SwitchAtNextIteration(driver);
       }
       // We are closing or suspending an AudioContext, but we just got resumed.
       // Queue the operation on the next driver so that the ordering is
       // preserved.
     } else if (!audioTrackPresent && switching) {
-      MOZ_ASSERT(nextDriver->AsAudioCallbackDriver() ||
-                 nextDriver->AsSystemClockDriver()->IsFallback());
-      if (nextDriver->AsAudioCallbackDriver()) {
-        nextDriver->AsAudioCallbackDriver()->
-          EnqueueStreamAndPromiseForOperation(aDestinationStream, aPromise,
-                                              aOperation);
-      }
-      // If this is not an AudioCallbackDriver, this means we failed opening an
-      // AudioCallbackDriver in the past, and we're constantly trying to re-open
-      // an new audio stream, but are running this graph that has an audio track
-      // off a SystemClockDriver for now to keep things moving.  This is the
-      // case where we're trying to switch an an system driver (because suspend
-      // or close have been called on an AudioContext, or we've closed the
-      // page), but we're already running one. We can just resolve the promise
-      // now: we're already running off a system thread.
-      AudioContextOperationCompleted(aDestinationStream, aPromise, aOperation);
+      MOZ_ASSERT(nextDriver->AsAudioCallbackDriver());
+      nextDriver->AsAudioCallbackDriver()->
+        EnqueueStreamAndPromiseForOperation(aDestinationStream, aPromise,
+                                            aOperation);
     } else {
       // We are closing or suspending an AudioContext, but something else is
       // using the audio stream, we can resolve the promise now.
       AudioContextOperationCompleted(aDestinationStream, aPromise, aOperation);
     }
   }
 }