diff --git a/dom/media/DOMMediaStream.cpp b/dom/media/DOMMediaStream.cpp index 5f0f097aee7d..ca001c8851f1 100644 --- a/dom/media/DOMMediaStream.cpp +++ b/dom/media/DOMMediaStream.cpp @@ -411,7 +411,7 @@ DOMMediaStream::DOMMediaStream(nsPIDOMWindowInner* aWindow, mPlaybackTrackListener(MakeAndAddRef(this)), mTracksCreated(false), mNotifiedOfMediaStreamGraphShutdown(false), mActive(false), mSetInactiveOnFinish(false), - mAbstractMainThread(aWindow->GetDocGroup()->AbstractMainThreadFor(TaskCategory::Other)) + mAbstractMainThread(aWindow ? aWindow->GetDocGroup()->AbstractMainThreadFor(TaskCategory::Other) : nullptr) { nsresult rv; nsCOMPtr uuidgen = @@ -855,6 +855,7 @@ DOMMediaStream::SetInactiveOnFinish() void DOMMediaStream::InitSourceStream(MediaStreamGraph* aGraph) { + MOZ_ASSERT(mAbstractMainThread); InitInputStreamCommon(aGraph->CreateSourceStream(mAbstractMainThread), aGraph); InitOwnedStreamCommon(aGraph); InitPlaybackStreamCommon(aGraph); @@ -863,6 +864,7 @@ DOMMediaStream::InitSourceStream(MediaStreamGraph* aGraph) void DOMMediaStream::InitTrackUnionStream(MediaStreamGraph* aGraph) { + MOZ_ASSERT(mAbstractMainThread); InitInputStreamCommon(aGraph->CreateTrackUnionStream(mAbstractMainThread), aGraph); InitOwnedStreamCommon(aGraph); InitPlaybackStreamCommon(aGraph); @@ -871,6 +873,7 @@ DOMMediaStream::InitTrackUnionStream(MediaStreamGraph* aGraph) void DOMMediaStream::InitAudioCaptureStream(nsIPrincipal* aPrincipal, MediaStreamGraph* aGraph) { + MOZ_ASSERT(mAbstractMainThread); const TrackID AUDIO_TRACK = 1; RefPtr audioCaptureSource = @@ -901,6 +904,7 @@ DOMMediaStream::InitInputStreamCommon(MediaStream* aStream, void DOMMediaStream::InitOwnedStreamCommon(MediaStreamGraph* aGraph) { + MOZ_ASSERT(mAbstractMainThread); MOZ_ASSERT(!mPlaybackStream, "Owned stream must be initialized before playback stream"); mOwnedStream = aGraph->CreateTrackUnionStream(mAbstractMainThread); @@ -918,6 +922,7 @@ DOMMediaStream::InitOwnedStreamCommon(MediaStreamGraph* aGraph) void DOMMediaStream::InitPlaybackStreamCommon(MediaStreamGraph* aGraph) { + MOZ_ASSERT(mAbstractMainThread); mPlaybackStream = aGraph->CreateTrackUnionStream(mAbstractMainThread); mPlaybackStream->SetAutofinish(true); mPlaybackStream->RegisterUser();