mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-13 13:25:37 +00:00
Bug 1319489 - Allow DOMMediaStream constructor to accept a nullptr for aWindow; r=jesup
For testing purposes, it is useful to pass a null aWindow to the DOMMediaStream constructor. This limits the amount of code that needs to be mocked to create a mock media stream. MozReview-Commit-ID: Jgm1m7N0FU4 --HG-- extra : rebase_source : 90ab0157bd0d75cb53190bf4a5d388971a6fdd1b
This commit is contained in:
parent
6452d4c225
commit
052a7764f8
@ -411,7 +411,7 @@ DOMMediaStream::DOMMediaStream(nsPIDOMWindowInner* aWindow,
|
||||
mPlaybackTrackListener(MakeAndAddRef<PlaybackTrackListener>(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<nsIUUIDGenerator> 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<BasicTrackSource> 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();
|
||||
|
Loading…
Reference in New Issue
Block a user