b=1020205 reset mRemainingResamplerTail when no longer using the resampler r=padenot
authorKarl Tomlinson <karlt+@karlt.net>
Thu, 03 Jul 2014 15:53:34 +1200
changeset 192041 67ea04f01522d680e4774c8a7e902342f8d657d4
parent 192040 cd7a8e681c7a8ac150fe836c710f1384225f74a5
child 192042 3b03d39b5160240b50e5b6d14e772db5d6bf1146
push id45734
push userktomlinson@mozilla.com
push dateThu, 03 Jul 2014 03:55:43 +0000
treeherdermozilla-inbound@3b03d39b5160 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerspadenot
bugs1020205
milestone33.0a1
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
b=1020205 reset mRemainingResamplerTail when no longer using the resampler r=padenot
content/media/webaudio/AudioBufferSourceNode.cpp
--- a/content/media/webaudio/AudioBufferSourceNode.cpp
+++ b/content/media/webaudio/AudioBufferSourceNode.cpp
@@ -150,16 +150,17 @@ public:
         (aChannels != mChannels ||
          // If the resampler has begun, then it will have moved
          // mBufferPosition to after the samples it has read, but it hasn't
          // output its buffered samples.  Keep using the resampler, even if
          // the rates now match, so that this latent segment is output.
          (aOutRate == mBufferSampleRate && !BegunResampling()))) {
       speex_resampler_destroy(mResampler);
       mResampler = nullptr;
+      mRemainingResamplerTail = 0;
       mBeginProcessing = mStart + 0.5;
     }
 
     if (aOutRate == mBufferSampleRate && !mResampler) {
       return;
     }
 
     if (!mResampler) {