diff --git a/dom/media/mediasource/MediaSourceDemuxer.cpp b/dom/media/mediasource/MediaSourceDemuxer.cpp index 73950e1a87..616693720a 100644 --- a/dom/media/mediasource/MediaSourceDemuxer.cpp +++ b/dom/media/mediasource/MediaSourceDemuxer.cpp @@ -465,10 +465,12 @@ MediaSourceTrackDemuxer::DoGetSamples(int32_t aNumSamples) } RefPtr samples = new SamplesHolder; samples->mSamples.AppendElement(sample); - if (mNextRandomAccessPoint.ToMicroseconds() <= sample->mTime) { + { MonitorAutoLock mon(mMonitor); - mNextRandomAccessPoint = - mManager->GetNextRandomAccessPoint(mType, MediaSourceDemuxer::EOS_FUZZ); + if (mNextRandomAccessPoint.ToMicroseconds() <= sample->mTime) { + mNextRandomAccessPoint = + mManager->GetNextRandomAccessPoint(mType, MediaSourceDemuxer::EOS_FUZZ); + } } return SamplesPromise::CreateAndResolve(samples, __func__); }