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

97539 Коммитов

Автор SHA1 Сообщение Дата
Razvan Maries d92ef717a6 Backed out 2 changesets (bug 1338637) for perma failures on test_webkitdirectory.html. CLOSED TREE
Backed out changeset 5bddcb99f650 (bug 1338637)
Backed out changeset 5c29fd30af97 (bug 1338637)
2020-11-16 18:49:34 +02:00
Razvan Maries bd8ba64c9d Backed out 2 changesets (bug 1626555) as per Andi's request. CLOSED TREE
Backed out changeset 22e23d9340a2 (bug 1626555)
Backed out changeset 02ea10ade875 (bug 1626555)
2020-11-16 18:45:15 +02:00
Andi-Bogdan Postelnicu 2b26dd3b3b Bug 1626555 - Add `dom/workers` to the list of non-unified-build-compatible directories. r=sg
Differential Revision: https://phabricator.services.mozilla.com/D97170
2020-11-16 15:56:30 +00:00
Andi-Bogdan Postelnicu 575adf71a5 Bug 1626555 - Add `dom/webgpu` to the list of non-unified-build-compatible directories. r=sg,kvark
Differential Revision: https://phabricator.services.mozilla.com/D97166
2020-11-16 15:37:09 +00:00
Andreas Farre 96a1671a8f Bug 1675026 - Don't set referrer for non-HTTP loads. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D96716
2020-11-16 15:44:57 +00:00
Nika Layzell 43b599baf6 Bug 1603340 - Disable browser_force_refresh.js under verify, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D95892
2020-11-12 18:01:08 +00:00
Nika Layzell 42028efc71 Bug 1671983 - Part 4: Stop awaiting BrowserTestUtils.loadURI, r=annyG,remote-protocol-reviewers,extension-reviewers,preferences-reviewers,whimboo,zombie
This method only is async in order to allow callers to wait for a process switch
triggered by the call to `loadURI` to be finished before resolving. With
DocumentChannel, we should never trigger a process switch eagerly like this
again, so we don't need any of the async behaviour here anymore.

This part is largely mechanical changes to tests, removing the `await` calls on
`loadURI`, and a follow-up part will remove the actual async logic from
`BrowserTestUtils.loadURI`.

Differential Revision: https://phabricator.services.mozilla.com/D94641
2020-11-12 18:01:03 +00:00
Nika Layzell 9ff27adca3 Bug 1671983 - Part 1: Remove now-unused process switching shouldLoadURI methods, r=annyG,geckoview-reviewers,snorp
These methods are no longer necessary, as all loads which can trigger process
switches now go through DocumentChannel.

The shouldLoadURI methods on nsIWebBrowserChrome3 are unfortunately still
necessary as they're used by the disabled-by-default "Single-Site Browser"
feature. In the future this may be possible to clean-up.

Differential Revision: https://phabricator.services.mozilla.com/D94638
2020-11-12 18:00:53 +00:00
Dzmitry Malyshau 67a1f9eb04 Bug 1629357 - Make WebGPU dependent on WebRender feature r=aosmond
WebGPU itself doesn't care about WebRender or even the GPU process.
However, the presentation to canvas as written today only works with WebRender, so
it seems fine to have it as a dependency in general.

An alternative could be to just fail getContext() call if webrender is disabled.

Differential Revision: https://phabricator.services.mozilla.com/D70888
2020-11-16 15:25:39 +00:00
pbz 574bf71758 Bug 1338637 - Ask user for confirmation before folder upload. r=Gijs,geckoview-reviewers,agi,baku
Differential Revision: https://phabricator.services.mozilla.com/D95324
2020-11-16 09:33:43 +00:00
Paul Adenot 2b0b162565 Bug 1675878 - Don't resample high-sample-rate audio down to a standard rate. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D97018
2020-11-16 14:33:46 +00:00
Kagami Sascha Rosylight 0c28c71544 Bug 1677254 - Make select event from select() uncancelable r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D97068
2020-11-15 02:32:22 +00:00
Emilio Cobos Alvarez 14f6139c4e Bug 1677304 - Fix a condition in a test to account for Mac.
Differential Revision: https://phabricator.services.mozilla.com/D97139
2020-11-16 10:39:15 +00:00
Karl Tomlinson 3ecfd961ba Bug 1213512 reject MediaDevices method promises with existing standard errors r=jib
OverconstrainedError is not yet supported.

Differential Revision: https://phabricator.services.mozilla.com/D95971
2020-11-12 00:07:15 +00:00
Karl Tomlinson 9ca7a9e8fd Bug 1213512 remove unused MediaMgrErr::Name::NotSupportedError r=jib
Depends on D95969

Differential Revision: https://phabricator.services.mozilla.com/D95970
2020-11-10 00:07:47 +00:00
Karl Tomlinson 43dbe6d29b Bug 1213512 use a DOMException for MaybeRejectWithNotReadableError() r=baku
This is consistent with
https://w3c.github.io/FileAPI/#dfn-error-codes

Depends on D95968

Differential Revision: https://phabricator.services.mozilla.com/D95969
2020-11-15 22:02:05 +00:00
Karl Tomlinson dfb919d222 Bug 1213512 use UTF8 for MediaMgrError and SpeechRecognitionError message r=jib
for consistency with ErrorResult and dom::Promise, which will mean no reverse
conversion is required for rejecting Promises.

Differential Revision: https://phabricator.services.mozilla.com/D95967
2020-11-15 21:59:05 +00:00
Karl Tomlinson 6cc8784bf6 Bug 1213512 remove unused MediaStreamError constructor r=jib
Depends on D95965

Differential Revision: https://phabricator.services.mozilla.com/D95966
2020-11-09 23:33:55 +00:00
Karl Tomlinson 500c6eba65 Bug 1213512 add a constraint so that mozGetUserMedia does not fail immediately r=jib
https://bug802982.bmoattachments.org/attachment.cgi?id=672704 was a crash in
EnumerateVideoDevices.  Presumably the constraint was not required at that
time, but the intent of the test was to exercise video capture code.

Depends on D95964

Differential Revision: https://phabricator.services.mozilla.com/D95965
2020-11-09 23:29:10 +00:00
Valentin Gosu bd132e112d Bug 1658097 - [fission] Send resource timing data for cross-origin frames to the correct process r=nika,necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D96754
2020-11-13 13:48:00 +00:00
Jeff Gilbert eb6f770a5b Bug 1674592 - Shrink uploads based on byte size estimates. r=lsalzman
For example uploads from WASM heaps would previously copy most of the
heap into shmem.

Differential Revision: https://phabricator.services.mozilla.com/D96287
2020-11-13 23:24:13 +00:00
Haik Aftandilian 537093e32b Bug 1676949 - Don't assume plugins are not universal builds on Apple Silicon r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D97052
2020-11-13 21:51:40 +00:00
Chun-Min Chang 92a8a10dbd Bug 1671714 - Add telemetry probes tracking audio backends r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D95625
2020-11-10 22:23:35 +00:00
Chun-Min Chang fb71a2f24b Bug 1671714 - Count the failures of audio stream initialization r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D95624
2020-11-05 14:43:54 +00:00
Emilio Cobos Álvarez 0ebfee88c4 Bug 1676932 - Remove VisibilityChange/nsIContentPermissionRequestCallback. r=nika
Also unused.

Differential Revision: https://phabricator.services.mozilla.com/D96884
2020-11-13 20:55:17 +00:00
Emilio Cobos Álvarez ab402ee088 Bug 1676932 - Remove nsIContentPermissionRequester. r=nika
It's an empty, useless interface after the previous patches. Also remove
a bunch of expired geolocation probes which were null-checking the requester
object for some reason.

Depends on D96882

Differential Revision: https://phabricator.services.mozilla.com/D96883
2020-11-12 20:23:52 +00:00
Luca Greco 48f4d27aa6 Bug 1663512 - Add error name and source file location to RemoteWorkerManager::GetRemoteType diagnostic assert to aid investigating issues. r=asuth
This patch include some additional changes to the diagnostic assert to be able to include:
- the error name for the E10SUtils call failure
- the file name and line number that originated the error

The change itself does not include a new automated test, but I did verify locally the new expected crash message:
- by temporarily a js error and a Components.Exception to be thrown while running one of the existing tests (dom/workers/test/xpcshell/test_remoteworker_launch_new_process.js).
- and also temporarily forcing the failure while the method is being called in both the parent and child processes.

Differential Revision: https://phabricator.services.mozilla.com/D96598
2020-11-13 21:07:52 +00:00
Jan Varga 4a6e04dc62 Bug 1676411 - Fix usage calculation for file:// (and potentially other) URIs; r=asuth,dom-workers-and-storage-reviewers
This patch improves the required consistency between GetStorageOriginKey and
GetLocalStorageQuotaKey.

Differential Revision: https://phabricator.services.mozilla.com/D96583
2020-11-13 19:51:08 +00:00
Steve Fink d0a1ea34ce Bug 1662254 - Merge ICCRunner and CCRunner into a single CCRunner r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D90633
2020-11-13 19:38:02 +00:00
alwu 0951f9218a Bug 1676551 - part2 : create promise before calling cubeb start. r=padenot
As cubeb might call audio stream's state callback very soon after we start cubeb, we have to create the promise beforehand in order to handle the case where we immediately get `drained`.

Differential Revision: https://phabricator.services.mozilla.com/D96770
2020-11-13 12:21:13 +00:00
alwu f798106d65 Bug 1676551 - part1 : handle rejected promise when fail to start the audio sink. r=padenot
In the change from bug1674597, AudioSinkWrapper only handles the promise when we succeed opening AudioSink. However, it forgots to handle the promise when fail to start AudioSink.

Differential Revision: https://phabricator.services.mozilla.com/D96738
2020-11-13 16:10:15 +00:00
Cristina Coroiu 16460d64d1 Merge mozilla-central to autoland a=merge. CLOSED TREE 2020-11-13 18:45:40 +02:00
Cristina Coroiu 625f0008fd Merge autoland to mozilla-central a=merge 2020-11-13 18:20:41 +02:00
Jonathan Kew 16eb1dba68 Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman
This allows us to avoid instantiating separate gfxFont objects when content is tagged
with different 'lang' attributes, yet ends up using the same fonts (e.g. Wikipedia may
use a default font such as Arial for language names/links that are tagged with several
dozen different languages).

Differential Revision: https://phabricator.services.mozilla.com/D96978
2020-11-13 13:15:39 +00:00
Dorel Luca 44e6dfd7e0 Merge autoland to mozilla-central. a=merge 2020-11-13 11:58:20 +02:00
Jan Varga 99fe7a41c3 Bug 1676973 - Special characters need to be escaped when used in a SQL LIKE statement; r=asuth,dom-workers-and-storage-reviewers
Depends on D96931

Differential Revision: https://phabricator.services.mozilla.com/D96932
2020-11-13 05:26:24 +00:00
Jean-Yves Avenard 4f8f4ad16b Bug 1672072 - P13. Always shut down decoder after creation. r=mattwoodrow,bryce,padenot
We also ensure that the MediaFormatReader will only shutdown once the CreateDecoderPromise has been resolved (or rejected)

This makes a few of the earlier changes redundant; as we can now guarantee all the objects provided to the PDMFactory will stay valid for the entire lifetime of the decoder. So we could do away with P4 and P7.

It's better that we keep those however, as it greatly simplify other usage of the PDMFactory. Ensuring that the user of the PDMFactory survives any decoder isn't a trivial affair.

Differential Revision: https://phabricator.services.mozilla.com/D96369
2020-11-13 04:21:17 +00:00
Jean-Yves Avenard 6fcaf876b9 Bug 1672072 - P11. Make MediaFormatReader support ThreadSafeWeakPtr. r=mattwoodrow,bryce,padenot
P4 introduced a cycle between the MediaFormatReader and the onWaitingForKeyEvent lambda.
Normally, this cycle would be broken by a call to Shutdown.

However, should the MediaFormatReader shuts down before the CreateDecoderPromise be resolved, it would have no way of shutting down the decoder keeping the cycle alive.

Theoretically, keeping a plain pointer to the MFR::mOnTrackWaitingForKey like we did before P4 is safe, as the EME code making use of it, only does so while we are decoding data and the MFR has the ability to properly shutdown the decoder.

However, for the sake of clarity and simplification, we introduce an easier way to check of the MFR has been deleted already by making it support SafeThreadWeakPtr; and the OnWaitingForKey keep a weak pointer to it and checking the value before calling it.

Differential Revision: https://phabricator.services.mozilla.com/D96367
2020-11-13 04:21:16 +00:00
Jean-Yves Avenard 96a9f35dcd Bug 1672072 - P10. Promisify launch of RDD process and remove sync dispatch. r=mattwoodrow,bryce,mjf,padenot
Differential Revision: https://phabricator.services.mozilla.com/D96366
2020-11-13 04:21:16 +00:00
Jean-Yves Avenard 44ad5e249a Bug 1672072 - P9. Make EnsureRDDProcessAndCreateBridge an async API. r=mattwoodrow,bryce,mjf,padenot,ipc-reviewers,mccr8
We can now chaincreation of the decoder to the launch of the RDD process as needed and setting up the PRemoteDecoderManager

Differential Revision: https://phabricator.services.mozilla.com/D96365
2020-11-13 04:21:16 +00:00
Jean-Yves Avenard 6d2df84e41 Bug 1672072 - P8. Create decoder asynchronously. r=mattwoodrow,bryce,padenot,mjf,ipc-reviewers,mccr8
PDMFactory::CreateDecoder is changed to return a MozPromise that will contain the MediaDataDecoder once created.

This will allow to later make RemoteDecoderManager fully asynchronous and no longer require an IPC sync call to start the RDD process.

We also modify the WebrtcMediaDataDecoderCodec to never create a decoder on the main thread, which could cause deadlocks under some circumstances.

Differential Revision: https://phabricator.services.mozilla.com/D96364
2020-11-13 07:46:44 +00:00
Jean-Yves Avenard 2dfb45a566 Bug 1672072 - P7. Remove the guarantee that the TrackInfo reference will always be valid. r=mattwoodrow,bryce,padenot
Until now, it was up to the caller to ensure that the VideoInfo or AudioInfo passed to the PlatformDecoderModule would remain alive until the created decoder was shut down.
This was achieved by the MediaFormatReader through great care and complexity and ensuring that the MediaFormatReader would never complete its own shutdown unless the  decoder did the same.

Asynchronously creating the decoder add an even greater of complexity. We have to ensure that should the caller shut down while the decoder creation promise hasn't been resolved ; that it stays alive the entire time.

It could be achieved by making the TrackInfo object refcounted, or creating a cycle between the caller and the PDM/decoder.

Each of those options have their own downsides.

Either of those options add an unwarranted level of complexity, when we can just have each decoder copy the arguments it receives. This is simpler and more straightforward and the required copy isn't expensive.

Differential Revision: https://phabricator.services.mozilla.com/D96363
2020-11-13 04:21:15 +00:00
Jean-Yves Avenard d05265e239 Bug 1672072 - P6. Don't attempt to create a video decoder if we don't have a KnowsCompositor set. r=mattwoodrow,bryce,mjf,padenot
Differential Revision: https://phabricator.services.mozilla.com/D96362
2020-11-13 04:21:15 +00:00
Jean-Yves Avenard df5b129aa8 Bug 1672072 - P5. Add CreateDecoderParamsForAsync struct. r=mattwoodrow,bryce,padenot
For now, creation of the decoders is a synchronous operation, so we can deal with a convenience, stack-only structure to pass all the parameters required.
This will change once creation becomes asynchronous and we must ensure that the parameters lifetime will overlap the entire process.

It also allows to simplify the few areas that did have to manually copy all those parameters and save them individually.

Differential Revision: https://phabricator.services.mozilla.com/D96361
2020-11-13 04:21:15 +00:00
Jean-Yves Avenard 4f53e8e651 Bug 1672072 - P4. Pass lambda rather than raw pointer to object. r=mattwoodrow,bryce,padenot
Passing a pointer to an object across several thread was dubious at best to ensure a use after free was never in place.
This complexity becomes even greater should we want to create the decoder asynchronously.

So we pass instead a lambda that holds a strong reference to the object that holds the event producer.

Differential Revision: https://phabricator.services.mozilla.com/D96360
2020-11-13 04:21:14 +00:00
Jean-Yves Avenard 98c87940d6 Bug 1672072 - P3. Remove IRemoteDecoderChild.h class. r=mattwoodrow,padenot,mjf,bryce
There's no longer have a GpuDecoderModule and RemoteGpuDecoder.

So we no longer need the IRemoteDecoderChild abstraction layer.

Differential Revision: https://phabricator.services.mozilla.com/D96359
2020-11-13 04:21:14 +00:00
Jean-Yves Avenard 8c9109c7c6 Bug 1672072 - P2. Remove unused DecoderDoctorDiagnostic from CreateDecoderParam. r=mattwoodrow,bryce,padenot
The DecoderDoctorDiagnostic is only ever used with PDM::Supports; when creating a decoder this object would always be nullptr.
Attempting to set it would have resulted in UAF as a DiagnosticDecoderDecoder is typically an object allocated on the stack and most of the code creating the decoders is async.

Differential Revision: https://phabricator.services.mozilla.com/D96358
2020-11-13 04:21:14 +00:00
Jean-Yves Avenard 4b07d3400c Bug 1672072 - P1. Add async wrapper. r=mattwoodrow,bryce,mjf,padenot
This method will become the main entry point of a PDM and allow to create a decoder asynchronously for PDM not supporting that interface.

Differential Revision: https://phabricator.services.mozilla.com/D96357
2020-11-13 04:21:14 +00:00
Bogdan Tara 266d9ad46c Backed out 13 changesets (bug 1672072) for short.mp4.firstframe.html failures CLOSED TREE
Backed out changeset f093b7969e8b (bug 1672072)
Backed out changeset 28db8276ec2b (bug 1672072)
Backed out changeset ff8fe1b856b3 (bug 1672072)
Backed out changeset 091b9449c786 (bug 1672072)
Backed out changeset 89d9a12c0737 (bug 1672072)
Backed out changeset 9cb71fd4b43b (bug 1672072)
Backed out changeset 09adad7416e1 (bug 1672072)
Backed out changeset 9905650335ef (bug 1672072)
Backed out changeset 6f1d99e9c3a1 (bug 1672072)
Backed out changeset b59655b7a595 (bug 1672072)
Backed out changeset 1ef9d6d10508 (bug 1672072)
Backed out changeset fbf0b5117655 (bug 1672072)
Backed out changeset 65cd3b9de5c6 (bug 1672072)
2020-11-13 06:13:22 +02:00
Jean-Yves Avenard 86118b9f7a Bug 1672072 - P13. Always shut down decoder after creation. r=mattwoodrow,bryce,padenot
We also ensure that the MediaFormatReader will only shutdown once the CreateDecoderPromise has been resolved (or rejected)

This makes a few of the earlier changes redundant; as we can now guarantee all the objects provided to the PDMFactory will stay valid for the entire lifetime of the decoder. So we could do away with P4 and P7.

It's better that we keep those however, as it greatly simplify other usage of the PDMFactory. Ensuring that the user of the PDMFactory survives any decoder isn't a trivial affair.

Differential Revision: https://phabricator.services.mozilla.com/D96369
2020-11-12 22:54:22 +00:00