Граф коммитов

16035 Коммитов

Автор SHA1 Сообщение Дата
Andreas Pehrson 34cf6af1dc Bug 1454998 - Remove calls to SetStreamOrderDirty() after affecting MediaStreams' finished state. r=karlt
The stream order does not depend on streams' finished state, so these calls are
unnecessary.

Differential Revision: https://phabricator.services.mozilla.com/D47687

--HG--
extra : moz-landing-system : lando
2019-10-02 08:12:42 +00:00
Andreas Pehrson 778a50400e Bug 1454998 - Remove track blocking from MediaInputPort. r=karlt
This functionality is not used since we moved to only having a single track per
MediaStream (bug 1493613).

Differential Revision: https://phabricator.services.mozilla.com/D47686

--HG--
extra : moz-landing-system : lando
2019-10-02 08:12:28 +00:00
Andreas Pehrson 4bf5436b76 Bug 1454998 - Break out PrincipalHandle into its own file. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D46764

--HG--
rename : dom/media/MediaSegment.h => dom/media/PrincipalHandle.h
extra : moz-landing-system : lando
2019-10-02 08:12:18 +00:00
Andreas Pehrson e3f878ed79 Bug 1454998 - Move TrackInfo::mTrackId away from TrackID as they're independent. r=karlt
TrackID has been used to denote tracks that are part of MediaStreams in the
MediaStreamGraph. The TrackInfo::mTrackId IDs are no longer used in the
MediaStream APIs and as such it's not necessary that they have the type TrackID.

This patch changes TrackInfo::mTrackId to be of type uint32_t instead, as that
is the type of Mp4parseTrackInfo::track_id, which is assigned to
TrackInfo::mTrackId as the sole remaining non-static user.

Other users set a static trackId of `1` or `2`, and as such remain supported by
this change.

Differential Revision: https://phabricator.services.mozilla.com/D46763

--HG--
extra : moz-landing-system : lando
2019-10-02 08:12:09 +00:00
Bogdan Tara efe859aeb7 Backed out changeset c29af4939f66 (bug 1581898) for crashinf mochitests CLOSED TREE 2019-10-02 10:42:27 +03:00
Byron Campen [:bwc] 277a49fe97 Bug 1581898: Add test-case that moves payload type 101 to the front. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D46829

--HG--
extra : moz-landing-system : lando
2019-10-01 22:15:40 +00:00
Matthew Gregan 27dee3a2b8 Bug 1544997 - Propogate cubeb stream error to AudioSink to handle loss of audio device. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D47745

--HG--
extra : moz-landing-system : lando
2019-10-01 12:14:44 +00:00
Dan Minor 90e44f7695 Bug 1567201 - Use mdns_service to handle mDNS queries; r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D46977

--HG--
extra : moz-landing-system : lando
2019-10-01 12:58:23 +00:00
Jean-Yves Avenard b9de3db7d3 Bug 1584721 - P4. Recycle all ShmemBuffer including for video. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D47556

--HG--
extra : moz-landing-system : lando
2019-10-01 11:28:06 +00:00
Jean-Yves Avenard 14f81f507b Bug 1584721 - P3. Add ability to make ShmemPool dynamic in size. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D47555

--HG--
extra : moz-landing-system : lando
2019-10-01 11:24:49 +00:00
Jean-Yves Avenard 8c0b43cefc Bug 1584721 - P2. Remove the need to explicitly inform child/parent that a Shmem is no longer in use. r=mjf
We can deduct it from the workflow itself.

Also fix potential Shmem leak.

Differential Revision: https://phabricator.services.mozilla.com/D47261

--HG--
extra : moz-landing-system : lando
2019-10-01 11:23:25 +00:00
Jean-Yves Avenard 707bb24c13 Bug 1584721 - P1. Add ability to create unsafe shmem with ShmemPool. r=mjf
By default, the remote process takes ownership of a shmem when it's sent over ipc.
Using "unsafe" shmem allows any processes to read/write/deallocate such shmem.

Differential Revision: https://phabricator.services.mozilla.com/D47554

--HG--
extra : moz-landing-system : lando
2019-10-01 11:23:22 +00:00
Gabriele Svelto 10d41866a5 Bug 1585156 - Remove useless inclusions of nsIDOMWindow.h and nsIDOMWindowUtils.h r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D47678

--HG--
extra : moz-landing-system : lando
2019-09-30 22:06:47 +00:00
Michael Froman 0821463d17 Bug 1583986 - add pref to control ffvpx mp3 decoding so we can turn it off if needed. r=bwc,jya
Differential Revision: https://phabricator.services.mozilla.com/D47499

--HG--
extra : moz-landing-system : lando
2019-09-30 14:29:08 +00:00
Alex Chronopoulos 628dbc7c0a Bug 1584560 - On default settings use the actual device channel count. r=padenot
In `MediaEngineWebRTCMicrophoneSource::EvaluateSettings`, on default settings, the `prefs.mChannels` is updated accordingly. However, it is not used for the calculation of the `FlattenedConstraints`. As a result, the channel count is 0, which is converted to 1, and not the actual device channel count as it should. Thus, the `prefs.mChannels` is used in the calculation of the `FlattenedConstraints`.

Differential Revision: https://phabricator.services.mozilla.com/D47453

--HG--
extra : moz-landing-system : lando
2019-09-30 09:15:42 +00:00
Jean-Yves Avenard 37332976c1 Bug 1582353 - P3. Promisify RDD/GPU remote decoder. r=mattwoodrow,mjf
Differential Revision: https://phabricator.services.mozilla.com/D47040

--HG--
extra : moz-landing-system : lando
2019-09-28 12:17:44 +00:00
Jean-Yves Avenard da5a007438 Bug 1582353 - P2. Remove unused variable. r=mattwoodrow
The MediaResult object isn't used; no need to set a crash timestamp on it.

Differential Revision: https://phabricator.services.mozilla.com/D47039

--HG--
extra : moz-landing-system : lando
2019-09-25 08:36:30 +00:00
Jean-Yves Avenard 301e1cb659 Bug 1582353 - P1. Add MediaResult serializer. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D47038

--HG--
extra : moz-landing-system : lando
2019-09-26 14:51:56 +00:00
Dorel Luca c18b81f79f Backed out 3 changesets (bug 1509316) for MDA failures on dom/media/tests/mochitest/test_peerConnection_captureStream_canvas_2d.html
Backed out changeset d64c35b9c211 (bug 1509316)
Backed out changeset 817f14af91f0 (bug 1509316)
Backed out changeset b4bee18bb499 (bug 1509316)
2019-09-27 23:31:51 +03:00
Bryce Seager van Dyk b4b72907d4 Bug 1583861 - Replace usages of GMP_LOG with GMP_LOG_DEBUG and remove GMP_LOG. r=alwu
Now that we have explicit macros for each GMP_LOG level GMP_LOG and
GMP_LOG_DEBUG are doing the same thing. This patch replaces all instances of
GMP_LOG with GMP_LOG_DEBUG. This has the benefit of all uses of the GMP macros
sharing a consistent naming convention and being explicit about the level
they're logging at.

Since we no longer use GMP_LOG() anywhere, remove it.

Differential Revision: https://phabricator.services.mozilla.com/D47374

--HG--
extra : moz-landing-system : lando
2019-09-27 17:57:24 +00:00
Bryce Seager van Dyk a866eb3dd2 Bug 1583861 - Tidy includes in files using new logs. r=alwu
I've reworked the includes in most of the files I've touched since I was adding
GMPLog.h:
- Reordered the includes to better match the Google C++ style.
- Removed includes that are already included from the associated header or
  GMPLog.h. I.e. if Foo.cpp includes Foo.h, and Foo.cpp includes other headers
  already included in Foo.h, these were removed.

Depends on D47194

Differential Revision: https://phabricator.services.mozilla.com/D47373

--HG--
extra : moz-landing-system : lando
2019-09-27 00:14:23 +00:00
Bryce Seager van Dyk a2dc990c12 Bug 1583861 - Use GMPLog.h macros where applicable. r=alwu
This patch changes instances where the GMP MOZ_LOG is used to prefer using
macros from GMPLog.h:
- Files that don't need their own macros now just directly call
  `GMP_LOG_<LEVEL>` as required.
- Files that use their own macros for formatting have had those macro
  definitions changes so that the macros have unique names and are expressed in
  terms of the macros from GMPLog.h.

I've also made a couple of drive by edits to logs so that they log more than a
couple of words and updated some strings where the incorrect class name was
being logged.

Differential Revision: https://phabricator.services.mozilla.com/D47194

--HG--
extra : moz-landing-system : lando
2019-09-27 00:14:46 +00:00
Bryce Seager van Dyk 9d894faf53 Bug 1583861 - Add different log level macros to GMPLog.h r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D47193

--HG--
extra : moz-landing-system : lando
2019-09-27 15:23:07 +00:00
Bryce Seager van Dyk abf6ceafce Bug 1583861 - Rework GMPLog.h include guard to follow Google C++ style. r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D47192

--HG--
extra : moz-landing-system : lando
2019-09-26 23:55:08 +00:00
John Lin 331d29e410 Bug 1509316 - p3: transfer image ownership when constructing VideoData. r=jya
Depends on D45772

Differential Revision: https://phabricator.services.mozilla.com/D45773

--HG--
extra : moz-landing-system : lando
2019-09-14 00:23:37 +00:00
John Lin 01cc36b53b Bug 1509316 - p1: move composite listening out of VideoData/VideoSink. r=jya,mattwoodrow
On Android, decoded buffers need to be send back to MediaCodec in order to be
rendered and/or recycled. The current mechanism introduced in bug 1299068 only
works for playback(VideoData/VideoSink) but not WebRTC(VideoFrame/VideoOutput).
Move the callback to SurfaceTextureImage because VideoData and VideoFrame both
own that when using MediaCodec, and move the notification to VideoFrameContainer
for both VideoSink and VideoOutput pass frames there for compositing.

Differential Revision: https://phabricator.services.mozilla.com/D45771

--HG--
extra : moz-landing-system : lando
2019-09-27 03:01:49 +00:00
thomasmo ab2f648351 Bug 1581855:Part 2 - Present VR output to VR Host r=kip,jrmuizel,sotaro,bryce
This change is a continuation of Part 1 (Bug 1570128), where the 2D content rendered by Firefox for Firefox Reality on Desktop is marshalled through VRHost so that it can be presented in a VR environment.
A new class, FxrOutputHandler, is created to manage creating a sharable texture, sharing it through VRShMem, and updating it when content updates. This class updates content with both WebRender and conventional rendering output.
This initial iteration of FxrOutputHandler does not have synchronization between reading and writing this shared texture across processes. A subsequent fix (Bug 1581881) is pending, which will reuse WebVR code to manage writing to and reading from a pool of textures.
This also presents issues with rendering protected media, so an additional class, FxrWindowManager, is created to manage all windows created for Firefox Reality on Desktop so that it can inform whether or not protected media can be presented.
The automated manual tests in vrhosttest.cpp now show the real shared texture handle rather than a fake value, which shows that marshaling succeeded.

Differential Revision: https://phabricator.services.mozilla.com/D46179

--HG--
extra : moz-landing-system : lando
2019-09-26 12:50:44 +00:00
alwu 8d8222b8a9 Bug 1578615 - part11 : remove usages of 'AudibleState::eMaybeAudible' in media element. r=chunmin
In bug1583978, we are going to remove `AudibleState::eMaybeAudible`. But before that, as `AudibleState::eMaybeAudible` is only used for delaying media playback, so we can remove its usage from media element and move it to the dedicated class to reduce confusion about how and when we should use `AudibleState::eMaybeAudible` or `AudibleState::eNotAudible`.

Differential Revision: https://phabricator.services.mozilla.com/D47153

--HG--
extra : moz-landing-system : lando
2019-09-25 23:55:42 +00:00
alwu 93ee16c385 Bug 1578615 - part3 : implement delay media playback policy. r=chunmin
Separate the logic of delaying media playback from `HTMLMediaElement`'s `mAudioChannelWrapper` to a new class, because delaying media playback is a special usage of using `AudioChannelAgent`.

It would make the code cleaner and separate the normal usage and the special usage, to reduce confusion.

We usually start `AudioChannelAgent` when media playback starts and stop it when media playback stops, however, in this case, we would start the agent even if media hasn't be started yet, because we would like to use the agent as a connection with `AudioChannelService` in order to receive the resume command when we're able to play delayed playback.

Differential Revision: https://phabricator.services.mozilla.com/D44746

--HG--
extra : moz-landing-system : lando
2019-09-25 23:41:23 +00:00
Ciure Andrei f4b3bef121 Backed out changeset 70f93c9956fc (bug 1581855) for Windows MinGW build bustages CLOSED TREE 2019-09-26 06:42:46 +03:00
thomasmo f054c8db61 Bug 1581855:Part 2 - Present VR output to VR Host r=kip,jrmuizel,sotaro,bryce
This change is a continuation of Part 1 (Bug 1570128), where the 2D content rendered by Firefox for Firefox Reality on Desktop is marshalled through VRHost so that it can be presented in a VR environment.
A new class, FxrOutputHandler, is created to manage creating a sharable texture, sharing it through VRShMem, and updating it when content updates. This class updates content with both WebRender and conventional rendering output.
This initial iteration of FxrOutputHandler does not have synchronization between reading and writing this shared texture across processes. A subsequent fix (Bug 1581881) is pending, which will reuse WebVR code to manage writing to and reading from a pool of textures.
This also presents issues with rendering protected media, so an additional class, FxrWindowManager, is created to manage all windows created for Firefox Reality on Desktop so that it can inform whether or not protected media can be presented.
The automated manual tests in vrhosttest.cpp now show the real shared texture handle rather than a fake value, which shows that marshaling succeeded.

Differential Revision: https://phabricator.services.mozilla.com/D46179

--HG--
extra : moz-landing-system : lando
2019-09-26 01:18:58 +00:00
Paul Adenot 7f8e465155 Bug 1583512 - Remove remaining references to doppler shift from AudioBufferSourceNode. r=karlt
Differential Revision: https://phabricator.services.mozilla.com/D46934

--HG--
extra : moz-landing-system : lando
2019-09-24 23:52:21 +00:00
alwu e3fa191af4 Bug 1580659 - part6 : remove input config parameter from 'NotifyStartedPlaying()'. r=Ehsan
After applying patch4, now we would pull the change from `AudioChannelService` everytime after starting the agent, so we don't need to rely on letting `NotifyStartedPlaying()` to modify the config and use it to update our state.

Differential Revision: https://phabricator.services.mozilla.com/D45753

--HG--
extra : moz-landing-system : lando
2019-09-24 21:18:07 +00:00
Alastor Wu 330adf4d9e Bug 1580659 - part5 : stop audio capturing explicitly. r=chunmin,karlt
As we start audio capturing explicitly, we should also take responsibility to stop audio capturing when we don't need it.

We were hiding too many details on `AudioChannelAgent` before, which allow us hard to know who and where we handle audio capturing.

Differential Revision: https://phabricator.services.mozilla.com/D45752

--HG--
extra : moz-landing-system : lando
2019-09-24 06:55:39 +00:00
alwu d158e0c4b2 Bug 1580659 - part4 : pulling the intial update after starting AudioChannelAgent. r=chunmin
Instead of calling those callback functions seperately, we could provide a function to pull those changes at once after starting the agent.

In addition, `WindowXXXChanged` are callback functions of `nsIAudioChannelAgentCallback`, so they should only be called by `AudioChannelAgent`, to indicate receiving the change from `AudioChannelService`. We should not call them directly.

Differential Revision: https://phabricator.services.mozilla.com/D45751

--HG--
extra : moz-landing-system : lando
2019-09-24 21:17:59 +00:00
Alastor Wu 5d31bee21f Bug 1580659 - part3 : call 'WindowAudioCaptureChanged()' explicitly. r=chunmin,karlt
Previously `AudioChannelService` called `WindowAudioCaptureChanged()` implicitly whenever we added the agent to the service [1], which made the audio capturing callback happen before finishing registration.

There are two drawbacks,
(1) it's hard to be aware of that the audio capturing callback would be called before finishing `AudioChannelAgent::NotifyStartedPlaying()` [2], which causes unclear call flow.

(2) If someone checks `AudioChannelAgent::IsPlayingStarted()` [3] inside audio capturing callback, then we would find that the `mIsRegToService` is false even if we have registered the agent to `AudioChannelService` because `mIsRegToService` is updated in the last line in the `AudioChannelAgent::NotifyStartedPlaying()`, but the audio capturing callback could be executed before that.

[1] https://searchfox.org/mozilla-central/rev/a777ff11b6d700a698c61e5bd17e73b044304494/dom/audiochannel/AudioChannelService.cpp#723
[2] https://searchfox.org/mozilla-central/rev/a777ff11b6d700a698c61e5bd17e73b044304494/dom/audiochannel/AudioChannelAgent.cpp#144
[3] https://searchfox.org/mozilla-central/rev/a777ff11b6d700a698c61e5bd17e73b044304494/dom/audiochannel/AudioChannelAgent.cpp#285

Differential Revision: https://phabricator.services.mozilla.com/D45750

--HG--
extra : moz-landing-system : lando
2019-09-24 06:55:43 +00:00
alwu ba0d878e47 Bug 1580659 - part1 : use AudioChannelAgent directly. r=chunmin
`nsIAudioChannelAgent` was created a common interface for a usage of in both js and C++ before, now we have no any JS code would use `nsIAudioChannelAgent`, it's only used in C++ code.

Therefore, in a coming refactoring (bug1580662), we will remove `nsIAudioChannelAgent` and use `AudioChannelAgent` as the only interface. Here we can make these classes start to reference `AudioChannelAgent`, instead of `nsIAudioChannelAgent`.

Differential Revision: https://phabricator.services.mozilla.com/D45748

--HG--
extra : moz-landing-system : lando
2019-09-24 06:55:29 +00:00
Mihai Alexandru Michis 4e1448e7e6 Backed out 2 changesets (bug 1510226) for causing xpcshell crashes and xpcshell failures in test_TelemetrySession.js CLOSED TREE
Backed out changeset cb739de6606d (bug 1510226)
Backed out changeset b6f670610dc3 (bug 1510226)
2019-09-25 04:25:07 +03:00
Doug Thayer 65be2b22c1 Bug 1510226 - Remove vestigial references to cooperative scheduling r=froydnj
GetCurrentPhysicalThread and GetCurrentVirtualThread are, in practice,
identical, as the TLS override that GetCurrentVirtualThread depends on
is never actually set. This simply removes that and renames some things/
deletes some comments.

Differential Revision: https://phabricator.services.mozilla.com/D41247

--HG--
extra : moz-landing-system : lando
2019-08-20 18:03:11 +00:00
shindli bfa22f415b Backed out 9 changesets (bug 1580659) for causing linting failure in /builds/worker/checkouts/gecko/dom/plugins/base/nsNPAPIPluginInstance.cpp CLOSED TREE
Backed out changeset b8c46aaec410 (bug 1580659)
Backed out changeset fd31977767d5 (bug 1580659)
Backed out changeset 8b9f61694270 (bug 1580659)
Backed out changeset 276827f54c71 (bug 1580659)
Backed out changeset ecb2bf9fb452 (bug 1580659)
Backed out changeset b712f15af619 (bug 1580659)
Backed out changeset c25bfc8b31b1 (bug 1580659)
Backed out changeset 20cfcd96a40e (bug 1580659)
Backed out changeset e92ff4ac7f43 (bug 1580659)
2019-09-24 09:50:42 +03:00
Alastor Wu b3e82e167d Bug 1580659 - part6 : remove input config parameter from 'NotifyStartedPlaying()'. r=Ehsan
After applying patch4, now we would pull the change from `AudioChannelService` everytime after starting the agent, so we don't need to rely on letting `NotifyStartedPlaying()` to modify the config and use it to update our state.

Differential Revision: https://phabricator.services.mozilla.com/D45753

--HG--
extra : moz-landing-system : lando
2019-09-18 00:03:14 +00:00
Alastor Wu eaf6b8ef6e Bug 1580659 - part5 : stop audio capturing explicitly. r=chunmin,karlt
As we start audio capturing explicitly, we should also take responsibility to stop audio capturing when we don't need it.

We were hiding too many details on `AudioChannelAgent` before, which allow us hard to know who and where we handle audio capturing.

Differential Revision: https://phabricator.services.mozilla.com/D45752

--HG--
extra : moz-landing-system : lando
2019-09-21 02:21:58 +00:00
Alastor Wu 17d1e17425 Bug 1580659 - part4 : pulling the intial update after starting AudioChannelAgent. r=chunmin
Instead of calling those callback functions seperately, we could provide a function to pull those changes at once after starting the agent.

In addition, `WindowXXXChanged` are callback functions of `nsIAudioChannelAgentCallback`, so they should only be called by `AudioChannelAgent`, to indicate receiving the change from `AudioChannelService`. We should not call them directly.

Differential Revision: https://phabricator.services.mozilla.com/D45751

--HG--
extra : moz-landing-system : lando
2019-09-23 17:44:21 +00:00
Alastor Wu f74da16941 Bug 1580659 - part3 : call 'WindowAudioCaptureChanged()' explicitly. r=chunmin,karlt
Previously `AudioChannelService` called `WindowAudioCaptureChanged()` implicitly whenever we added the agent to the service [1], which made the audio capturing callback happen before finishing registration.

There are two drawbacks,
(1) it's hard to be aware of that the audio capturing callback would be called before finishing `AudioChannelAgent::NotifyStartedPlaying()` [2], which causes unclear call flow.

(2) If someone checks `AudioChannelAgent::IsPlayingStarted()` [3] inside audio capturing callback, then we would find that the `mIsRegToService` is false even if we have registered the agent to `AudioChannelService` because `mIsRegToService` is updated in the last line in the `AudioChannelAgent::NotifyStartedPlaying()`, but the audio capturing callback could be executed before that.

[1] https://searchfox.org/mozilla-central/rev/a777ff11b6d700a698c61e5bd17e73b044304494/dom/audiochannel/AudioChannelService.cpp#723
[2] https://searchfox.org/mozilla-central/rev/a777ff11b6d700a698c61e5bd17e73b044304494/dom/audiochannel/AudioChannelAgent.cpp#144
[3] https://searchfox.org/mozilla-central/rev/a777ff11b6d700a698c61e5bd17e73b044304494/dom/audiochannel/AudioChannelAgent.cpp#285

Differential Revision: https://phabricator.services.mozilla.com/D45750

--HG--
extra : moz-landing-system : lando
2019-09-18 21:59:32 +00:00
alwu 8c34182874 Bug 1580659 - part1 : use AudioChannelAgent directly. r=chunmin
`nsIAudioChannelAgent` was created a common interface for a usage of in both js and C++ before, now we have no any JS code would use `nsIAudioChannelAgent`, it's only used in C++ code.

Therefore, in a coming refactoring (bug1580662), we will remove `nsIAudioChannelAgent` and use `AudioChannelAgent` as the only interface. Here we can make these classes start to reference `AudioChannelAgent`, instead of `nsIAudioChannelAgent`.

Differential Revision: https://phabricator.services.mozilla.com/D45748

--HG--
extra : moz-landing-system : lando
2019-09-16 19:44:37 +00:00
Boris Zbarsky 013f0714ce Bug 1581278 part 5. Stop incorrectly rejecting promises in EME. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D46387

--HG--
extra : moz-landing-system : lando
2019-09-20 14:20:48 +00:00
Boris Zbarsky b544880d43 Bug 1581278 part 4. Stop incorrectly rejecting promises in MediaCapabilities. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D46385

--HG--
extra : moz-landing-system : lando
2019-09-19 02:03:07 +00:00
Boris Zbarsky e44e36a681 Bug 1581278 part 2. Add convenience methods for rejecting promises with various types of spec exceptions. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D46383

--HG--
extra : moz-landing-system : lando
2019-09-19 13:02:39 +00:00
Boris Zbarsky 6bfd85094a Bug 1581278 part 1. Implement ErrorResult overload of DetailedPromise::MaybeReject. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D46382

--HG--
extra : moz-landing-system : lando
2019-09-19 20:46:15 +00:00
Boris Zbarsky 417c6749c3 Bug 1581276. Require a message arg to ThrowDOMException. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D46250

--HG--
extra : moz-landing-system : lando
2019-09-20 02:17:01 +00:00