Commit Graph

80903 Commits

Author SHA1 Message Date
Boris Zbarsky
c898179a08 Bug 1528286. Remove bogus comment. r=froydnj
There are no relocations needed for string constants.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 16:25:06 +00:00
Valentin Gosu
27cac83e4a Bug 1521808 - Use topWindowPrincipal for CrossOriginOpenerPolicy check r=mayhemer,nika
- Adds nsIHttpChannelInternal.setTopWindowPrincipal used to pass the principal from the child to the parent

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

--HG--
extra : moz-landing-system : lando
2019-02-15 12:15:21 +00:00
Razvan Maries
c93e77a62f Backed out changeset b7713efeb5f1 (bug 1525278) as jya's request for diagnostic and causing crashes. CLOSED TREE 2019-02-15 13:52:45 +02:00
Brian Birtles
fb78c09d5c Bug 1524480 - Add tests for unstyled data; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D19886

--HG--
extra : moz-landing-system : lando
2019-02-15 05:54:49 +00:00
Brian Birtles
637401bd0a Bug 1524480 - Make KeyframeEffect::CreateComputedStyleForAnimationValue handle a null elementForResolve; r=hiro
This is unrelated to this bug (the assertion can already fail without the
patches in this patch queue) but I uncovered it while writing the tests in the
next patch which will trip the assertion that is removed in this patch.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 05:54:10 +00:00
Brian Birtles
63a5a6d277 Bug 1524480 - Add a version of KeyframeEffect::GetTargetComputedStyle that does not flush style and use it; r=hiro
A forthcoming spec change will require that Animatable.animate() and other
methods that mutate animations do not flush style:

  https://github.com/w3c/csswg-drafts/issues/3613

Bug 1525809 will add web-platform-tests for this change once it is made (and
tweak the behavior introduced in this patch if necessary).

Currently Firefox and WebKit will flush styles when calling
Animatable.animate(). This is undesirable since this method will _also_
invalidate style. As a result, if content triggers multiple animations in
a single animation frame, it will restyle every time it creates an animation.

This patch removes the style flush from a number of these methods.

In general the style flush is not necessary. For example, we don't need to flush
style before getting the computed style to pass to UpdateProperties. That's
because if there are pending style changes, then UpdateProperties will be called
with the updated style once they are applied anyway. Flushing style first means
that we may end up resolving style twice, when once would be sufficient.

For GetKeyframes() however, when used on a CSS animation, it should return
the most up-to-date style so for that call site we *do* want to flush style.

The test case added in this patch will fail without the code changes in the
patch. Specifically, we will observe 10 non-animation restyles (from the
5 animations) if we flush styles from SetKeyframes.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 06:08:05 +00:00
Brian Birtles
9b5d999daf Bug 1524480 - Make test_animation_properties.html flush styles; r=hiro
Depends on D18915

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

--HG--
extra : moz-landing-system : lando
2019-02-15 06:33:08 +00:00
Brian Birtles
2b4763db9f Bug 1524480 - Trigger transitions in test_missing-keyframe-on-compositor.html; r=hiro
test_missing-keyframe-on-compositor.html assumes that calling Element.animate()
will flush style and trigger transitions. However, in this patch series we will
make Element.animate() stop flushing style (and the spec will also mandate
this). Once we do that, the expected transitions will no longer fire and this
test will fail. This patch updates the test to explicitly trigger transitions
before calling Element.animate().

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

--HG--
extra : moz-landing-system : lando
2019-02-15 06:08:07 +00:00
Brian Birtles
3e2c609d02 Bug 1524480 - Update the cumulative change hint even if a keyframe effect's properties haven't changed if we failed to do so previously because we had no style data; r=hiro
Without this fix, various tests in
dom/animation/tests/mozilla/test_restyles.html will fail once we remove the
style flush from KeyframeEffect::SetKeyframes. That is because we will fail to
set mCumulativeChangeHint correctly when we initially set up the keyframe's
properties and then never update it since UpdateProperties will return early
when it determines the properties have not changed.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 05:51:08 +00:00
Brian Birtles
78671d57b6 Bug 1524480 - Set NS_FRAME_MAY_BE_TRANSFORMED bit when we have nsChangeHint_UpdateTransformLayer; r=hiro
Typically we set the NS_FRAME_MAY_BE_TRANSFORMED bit on a frame when one of the
following situations arises:

a. We update the keyframes of a KeyframeEffect to include transforms or we
   create a new KeyframeEffect that animates transforms (in
   KeyframeEffect::SetKeyframes), or
b. We retarget a KeyframeEffect with transforms at a new element (in
   KeyframeEffect::SetTarget), or
c. We create an nsFrame with transform animations applied to it (in
   nsFrame::Init), or
d. We get a nsChangeHint_AddOrRemoveTransform hint in
   RestyleManager::ProcessRestyledFrames and decide to update the frame bit on
   the frame and its continuations accordingly.

However, there are some situations where we can have a transform animation on
a frame where none of the above are triggered.

For example, if the style frame is not unavailable (e.g.  a display:none
element) when the KeyframeEffect is initialized we will fail to the frame bit in
(a) and if we never retarget the effect we will never set reach (b).

Furthermore, if we have an animation that is "not relevant" (e.g.  idle) and
hence not registered with the EffectSet when the frame is initialized we will
fail to set the frame bit in (c).

Finally, if the the animation does not produce a style change that causes the
nsChangeHint_AddOrRemoveTransform bit to be set (e.g. the transform animation
begins at 'none') we will not set the frame bit in (d).

As a result, we can end up failing to set the NS_FRAME_MAY_BE_TRANSFORMED bit
for some content.

The crashtest included in this patch produces such a case and, without the code
changes in this patch, will fail the assertion in ApplyRenderingChangeToTree[1]:

  NS_ASSERTION(!(aChange & nsChangeHint_UpdateTransformLayer) ||
                   aFrame->IsTransformed() ||
                   aFrame->StyleDisplay()->HasTransformStyle(),
               "Unexpected UpdateTransformLayer hint");

That is because although the nsChangeHint_UpdateTransformLayer bit will be set,
aFrame->IsTransformed() will return false because the frame bit has not been
set, and aFrame->StyleDisplay()->HasTransformStyle() will return false because
the animation sets the transform to 'none'.

Not only will this assertion fail, but once we cease flushing style as part of
triggering an animation later in this patch, the reftest
layout/reftests/web-animations/stacking-context-transform-changing-effect.html
will begin to fail. That reftest produces a similar situation to the crashtest
but it currently does not fail because the style flush that happens as part of
creating an animation ensures the style frame is available at the point when the
animation is triggered and hence case (a) from above is hit.

This patch addresses this by detecting the case where we have this change hint
set but not the corresponding frame bit, and setting the frame bit.

[1] https://searchfox.org/mozilla-central/rev/9eb30227b21e0aa40d51d9f9b08bb0b113c5fadb/layout/base/RestyleManager.cpp#1191-1199

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

--HG--
extra : moz-landing-system : lando
2019-02-15 06:35:55 +00:00
Brian Birtles
4bf4b6e949 Bug 1524480 - Unified build fixes for KeyframeEffect.cpp and KeyframeUtils.cpp; r=hiro
Regarding the missing dom:: specifications, presumably this currently works
because in the unified build this file gets combined with something with "using
namespace mozilla::dom" but this will fail if the chunking of the unified build
changes.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 06:05:06 +00:00
Andreas Farre
1877793bdc Bug 1525887 - Add set of ContentParent subscribed to BrowsingContextGroup. r=nika
Add the origin ContentParent to a CanonicalBrowsingContext's group
when a CanonicalBrowsingContext is created from IPC. With this it is
possible to keep track of all child processes associated with a
BrowsingContextGroup.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 11:35:48 +00:00
Emilio Cobos Álvarez
a3a05dc592 Bug 1525509 - Don't rebuild the frame tree to un-suppress whitespace if we cannot flush layout. r=dholbert
The information we'd get would be meaningless anyway in a fully new frame tree
if we don't run layout.

We should consider whether we need to un-suppress whitespace at all here...

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

--HG--
extra : moz-landing-system : lando
2019-02-15 06:29:54 +00:00
Andreas Farre
48da8e2402 Bug 1515646 - Add FindWithName and FindChildWithName to BrowsingContext. r=peterv
This implements the step of choosing a browsing context with
FindWithName, which should be equivalent to calling
nsIDocShellTreeItem.findItemWithName passing null for 'aRequestor' and
'aOriginalRequestor' and false for 'aSkipTabGroup'.

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

--HG--
extra : moz-landing-system : lando
2019-02-15 09:59:21 +00:00
Andrea Marchesini
6717d9383e Bug 1527000 - Stop passing a null or empty nsILoadGroup to ServiceWorker CompareNetwork, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D19381

--HG--
extra : moz-landing-system : lando
2019-02-15 04:56:12 +00:00
Sylvestre Ledru
41d1d79094 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-02-15 08:15:57 +00:00
Boris Zbarsky
8a0e2dabbe Bug 1527905. Switch from zone-per-tab to zone-per-toplevel-load. r=mccr8
The main reason for this change is that we don't really want to share
compartments across same-origin navigations in the same tab (because that will
tend to keep the oldest global involved alive, due to CCWs and
XPCWrappedNatives allocated in that global).  We could somehow flag
compartments as not sharable when we navigate, but it's simpler to just switch
zones, since we restrict our search of shareable compartments to a single zone.

A side benefit is that this way the lifetime of objects in a single zone is
more likely to be similar.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 22:43:19 +00:00
Masayuki Nakano
dbf1103279 Bug 1525162 - Make nsClipboardCommand::IsCommandEnabled() check whether window has document before accessing the document r=smaug
nsClipboardCommand::IsCommandEnabled() accesses document without null-check.
That must be the cause of the reported crash.  This patch just adds the check.

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

--HG--
extra : moz-landing-system : lando
2019-02-13 00:11:03 +00:00
Daniel Varga
30780abeeb Merge mozilla-inbound to mozilla-central. a=merge 2019-02-15 03:41:17 +02:00
Mike Hommey
9c34e0b914 Bug 1512504 - Don't set __PRETTY_FUNCTION__ on clang-cl. r=froydnj
clang-cl defines it on its own, although the value is slightly different
from __FUNCSIG__ (it doesn't contain the ABI, which doesn't really
matter). We've only been setting it this was on clang-cl by extension of
setting it for msvc.

Depends on D19616

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

--HG--
extra : moz-landing-system : lando
2019-02-14 18:56:29 +00:00
Mike Hommey
ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
  worked in non-ASCII cases.

This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.

Depends on D19614

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

--HG--
extra : moz-landing-system : lando
2019-02-14 21:45:27 +00:00
Gerald Squelart
349d4a5381 Bug 1527564 - Child forwards its process name to the profiler - r=mstange
Profiler was previously fetching process name at the time of shutdown
serialization, at which point that name could have already been destroyed.

Now the child process just forwards the name as soon as it is given, so
the profiler can store it for later.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 21:19:42 +00:00
J.C. Jones
2928c19d63 Bug 1526023 - Web Authentication - add isExternalCTAP2SecurityKeySupported r=qdot,keeler
We support CTAP2 devices on one specific platform, making it hard for RPs to
decide whether or not Firefox will support the tokens they're asking for. This
adds a non-standard method to divine that information while Firefox moves toward
CTAP2 support.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 20:11:34 +00:00
Brendan Dahl
74c580a4c5 Bug 1527733 - Remove special XUL DOM tree traversal. r=smaug
Move functionality out of XULDocument::AddElementToDocumentPost:
1) Convert all XUL link elements into HTML link elements which have
code to handle when they are added to the DOM.
2) Move handling of the end of a linkset element into nsXULElement's DoneAddingChildren callback.
3) Move document direction reset to where the root element is created.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 10:43:35 +00:00
Aaron Klotz
84c01f8930 Bug 1400344: Rename mscom::MainThreadRuntime to mscom::ProcessRuntime and make it aware of Win32k lockdown and of multiple instantiations; r=Jamie
This patch takes care of a bunch of issues and does some cleanup:

* We rename mscom::MainThreadRuntime to mscom::ProcessRuntime, as the latter
  is a more accurate name going forward.
* We make ProcessRuntime aware of the Win32k Lockdown process mitigation
  policy. When Win32k is disabled, we perform process-wide COM initialization
  in the multi-threaded apartment (since we cannot create an STA window).
* We refactor the mscom apartment region stuff to enable the Win32k lockdown
  pieces in ProcessRuntime.
* We move some Gecko-specific stuff into MOZILLA_INTERNAL_API guards so that
  ProcessRuntime is usable outside of xul.dll (I will be needing it for the
  launcher process).
* Another thing that might happen with the launcher process is that, under
  error conditions in the launcher, we create a ProcessRuntime object on a
  background thread for the purposes of telemetry logging, but we also allow
  the main thread to proceed to start as the browser. This could result in a
  scenario where the main thread, as the browser process, is attempting to
  instantiate its ProcessRuntime and ends up racing with the launcher process's
  telemetry thread which has its own ProcessRuntime. To account for this
  situation, we add mutual exclusion to the process-wide initialization code.
  We host this part inside mozglue since that state is shared between both
  firefox.exe and xul.dll.
* We clean up ProcessRuntime::InitializeSecurity by using Vector to set up
  the EXPLICIT_ACCESS entries.
* We remove mscom::MainThreadClientInfo and replace it with a direct call to
  CoGetCallerTID
* We revise all references to this class to use the new name.

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

--HG--
rename : ipc/mscom/COMApartmentRegion.h => ipc/mscom/ApartmentRegion.h
rename : ipc/mscom/MainThreadRuntime.cpp => ipc/mscom/ProcessRuntime.cpp
rename : ipc/mscom/MainThreadRuntime.h => ipc/mscom/ProcessRuntime.h
extra : moz-landing-system : lando
2019-02-14 18:56:20 +00:00
Dorel Luca
67115dd61b Backed out changeset 2d4b8d90cbd7 (bug 1400344) for Spider monkey failrues. CLOSED TREE
--HG--
rename : ipc/mscom/ApartmentRegion.h => ipc/mscom/COMApartmentRegion.h
rename : ipc/mscom/ProcessRuntime.cpp => ipc/mscom/MainThreadRuntime.cpp
rename : ipc/mscom/ProcessRuntime.h => ipc/mscom/MainThreadRuntime.h
2019-02-14 20:45:26 +02:00
Nika Layzell
5414211789 Bug 1522637 - Part 1: Disable in tests for allowLinkedWebInFileUriProcess, r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D18602

--HG--
extra : source : 5988b8e7d17c0f01aa3e3eeb967004aef66ddaa5
2019-02-14 15:12:49 +00:00
Bogdan Tara
c732fccb1e Backed out 8 changesets (bug 1522637) for browser_all_files_referenced.js failures CLOSED TREE
Backed out changeset f7ab0e6e739b (bug 1522637)
Backed out changeset 3d24e8e81c02 (bug 1522637)
Backed out changeset 41ca0b87537e (bug 1522637)
Backed out changeset 6e0d4b6b1c93 (bug 1522637)
Backed out changeset 8f494271ec06 (bug 1522637)
Backed out changeset 6b4d010964ec (bug 1522637)
Backed out changeset 5eeda2ba8e79 (bug 1522637)
Backed out changeset 5988b8e7d17c (bug 1522637)
2019-02-14 19:20:58 +02:00
Gurzau Raul
18a6010b33 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-02-14 19:04:56 +02:00
Gurzau Raul
c1733291c0 Merge inbound to mozilla-central. a=merge 2019-02-14 19:01:42 +02:00
Aaron Klotz
0cb12a123a Bug 1400344: Rename mscom::MainThreadRuntime to mscom::ProcessRuntime and make it aware of Win32k lockdown and of multiple instantiations; r=Jamie
This patch takes care of a bunch of issues and does some cleanup:

* We rename mscom::MainThreadRuntime to mscom::ProcessRuntime, as the latter
  is a more accurate name going forward.
* We make ProcessRuntime aware of the Win32k Lockdown process mitigation
  policy. When Win32k is disabled, we perform process-wide COM initialization
  in the multi-threaded apartment (since we cannot create an STA window).
* We refactor the mscom apartment region stuff to enable the Win32k lockdown
  pieces in ProcessRuntime.
* We move some Gecko-specific stuff into MOZILLA_INTERNAL_API guards so that
  ProcessRuntime is usable outside of xul.dll (I will be needing it for the
  launcher process).
* Another thing that might happen with the launcher process is that, under
  error conditions in the launcher, we create a ProcessRuntime object on a
  background thread for the purposes of telemetry logging, but we also allow
  the main thread to proceed to start as the browser. This could result in a
  scenario where the main thread, as the browser process, is attempting to
  instantiate its ProcessRuntime and ends up racing with the launcher process's
  telemetry thread which has its own ProcessRuntime. To account for this
  situation, we add mutual exclusion to the process-wide initialization code.
  We host this part inside mozglue since that state is shared between both
  firefox.exe and xul.dll.
* We clean up ProcessRuntime::InitializeSecurity by using Vector to set up
  the EXPLICIT_ACCESS entries.
* We remove mscom::MainThreadClientInfo and replace it with a direct call to
  CoGetCallerTID
* We revise all references to this class to use the new name.

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

--HG--
rename : ipc/mscom/COMApartmentRegion.h => ipc/mscom/ApartmentRegion.h
rename : ipc/mscom/MainThreadRuntime.cpp => ipc/mscom/ProcessRuntime.cpp
rename : ipc/mscom/MainThreadRuntime.h => ipc/mscom/ProcessRuntime.h
extra : moz-landing-system : lando
2019-02-14 16:40:58 +00:00
Nika Layzell
0656b8e189 Bug 1522637 - Part 1: Disable in tests for allowLinkedWebInFileUriProcess, r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D18602

--HG--
extra : moz-landing-system : lando
2019-02-14 15:12:49 +00:00
Andy Wingo
7d559ef8c3 Bug 1527860 - Remove ENABLE_BIGINT #ifdef r=jandem,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D19766

--HG--
extra : moz-landing-system : lando
2019-02-14 15:03:44 +00:00
Alex Chronopoulos
16529fa15f Bug 1525278 - Assert AudioStream is not errored when SetVolume is called. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D18682

--HG--
extra : moz-landing-system : lando
2019-02-14 11:13:38 +00:00
Bryce Van Dyk
38ee1554b6 Bug 1513651 - Add test file with 2 sample description entries to MP4 parser general gtests. r=jya
Add a test file that was used to test mp4 parser telemetry to the general suite.
This file was added in the revision before this, and is also useful to provide
further coverage for other tests.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 11:14:07 +00:00
Csoregi Natalia
ecd94d6986 Backed out 79 changesets (bug 1524687, bug 1524688) for crashes on mozilla::dom::ScreenOrientation::ScreenOrientation(nsPIDOMWindowInner *,nsScreen *). CLOSED TREE
Backed out changeset 68a001a42406 (bug 1524687)
Backed out changeset 328de611bcd3 (bug 1524688)
Backed out changeset 68cffca6927a (bug 1524687)
Backed out changeset 81dc12cc9257 (bug 1524688)
Backed out changeset c7c49f64048f (bug 1524688)
Backed out changeset fb23a0271da0 (bug 1524688)
Backed out changeset 0c1d1248e59e (bug 1524688)
Backed out changeset 9e9ec7de4160 (bug 1524688)
Backed out changeset de0b9993bd5d (bug 1524688)
Backed out changeset 92877cf4fe33 (bug 1524688)
Backed out changeset b4938f2ff8fd (bug 1524688)
Backed out changeset 230d2feaf941 (bug 1524688)
Backed out changeset 6c63bc240972 (bug 1524688)
Backed out changeset 0ad5465eace1 (bug 1524688)
Backed out changeset 1e75ce91029b (bug 1524688)
Backed out changeset 34a978503b1d (bug 1524688)
Backed out changeset 183602e8a30b (bug 1524688)
Backed out changeset 12a9135dc005 (bug 1524688)
Backed out changeset 978ef5dac9db (bug 1524688)
Backed out changeset 28105bf7bf6a (bug 1524688)
Backed out changeset a9fb74beaf2b (bug 1524688)
Backed out changeset fe106b369a72 (bug 1524688)
Backed out changeset e657e77d4271 (bug 1524688)
Backed out changeset 09f626870ad0 (bug 1524688)
Backed out changeset fe9b6695212e (bug 1524688)
Backed out changeset 995ea188bc31 (bug 1524688)
Backed out changeset 01c4d3edb1b0 (bug 1524688)
Backed out changeset 1bb7dfbb9f48 (bug 1524688)
Backed out changeset 56c61e0a1f45 (bug 1524688)
Backed out changeset c819943ff466 (bug 1524688)
Backed out changeset a1dd5cec066e (bug 1524688)
Backed out changeset 517838ee0c3c (bug 1524688)
Backed out changeset f509a5759fdf (bug 1524688)
Backed out changeset 56f5c8f0d708 (bug 1524688)
Backed out changeset 5746311ef859 (bug 1524688)
Backed out changeset df02f7d25212 (bug 1524688)
Backed out changeset c9846136d105 (bug 1524688)
Backed out changeset 2bd48db9cd0f (bug 1524688)
Backed out changeset ff120b4eeb79 (bug 1524688)
Backed out changeset fe583e7aae8d (bug 1524688)
Backed out changeset 18f156d6355a (bug 1524688)
Backed out changeset f4eaebbe2e0f (bug 1524688)
Backed out changeset bf6b18e23f69 (bug 1524688)
Backed out changeset dd89eb7e9b0d (bug 1524688)
Backed out changeset 4cbbb367ba0b (bug 1524688)
Backed out changeset 4ed0cf6be580 (bug 1524688)
Backed out changeset d8efb5ed62b1 (bug 1524688)
Backed out changeset ea347d57d73a (bug 1524688)
Backed out changeset 911689ef9f33 (bug 1524688)
Backed out changeset 28670fdc418d (bug 1524688)
Backed out changeset 38e1e42a0fb0 (bug 1524688)
Backed out changeset 35a5f031dd1e (bug 1524688)
Backed out changeset b586d55d76d5 (bug 1524688)
Backed out changeset 6dcacead1746 (bug 1524688)
Backed out changeset 9895239d8ac6 (bug 1524688)
Backed out changeset 25f982fd53bd (bug 1524688)
Backed out changeset 4fb0f0a59fe2 (bug 1524688)
Backed out changeset fdc6c4ed241a (bug 1524688)
Backed out changeset 5ce5986068f0 (bug 1524688)
Backed out changeset ab64ed7388ae (bug 1524688)
Backed out changeset 56607c5a301a (bug 1524688)
Backed out changeset 6b3684e7d8f9 (bug 1524688)
Backed out changeset ee28258a5724 (bug 1524688)
Backed out changeset 9201a7ea3c54 (bug 1524688)
Backed out changeset d5dca413e2da (bug 1524688)
Backed out changeset 68eb174a337b (bug 1524688)
Backed out changeset 625f71135038 (bug 1524687)
Backed out changeset 46e13c453538 (bug 1524687)
Backed out changeset 614be688767f (bug 1524687)
Backed out changeset 9c24919ac5c2 (bug 1524687)
Backed out changeset b9862758b98c (bug 1524687)
Backed out changeset 92d9e927deec (bug 1524687)
Backed out changeset f4ee175bc5bd (bug 1524687)
Backed out changeset 191afe83da2e (bug 1524687)
Backed out changeset c58caf41bb94 (bug 1524687)
Backed out changeset df95a56dae04 (bug 1524687)
Backed out changeset 10c69df4444d (bug 1524687)
Backed out changeset 219b84a58f50 (bug 1524687)
Backed out changeset e96e61bd282f (bug 1524687)

--HG--
rename : browser/components/migration/360seProfileMigrator.jsm => browser/components/migration/360seProfileMigrator.js
rename : browser/components/migration/ChromeProfileMigrator.jsm => browser/components/migration/ChromeProfileMigrator.js
rename : browser/components/migration/EdgeProfileMigrator.jsm => browser/components/migration/EdgeProfileMigrator.js
rename : browser/components/migration/FirefoxProfileMigrator.jsm => browser/components/migration/FirefoxProfileMigrator.js
rename : browser/components/migration/IEProfileMigrator.jsm => browser/components/migration/IEProfileMigrator.js
rename : browser/components/migration/ProfileMigrator.jsm => browser/components/migration/ProfileMigrator.js
rename : browser/components/migration/SafariProfileMigrator.jsm => browser/components/migration/SafariProfileMigrator.js
rename : browser/components/newtab/AboutNewTabService.jsm => browser/components/newtab/aboutNewTabService.js
rename : browser/components/BrowserContentHandler.jsm => browser/components/nsBrowserContentHandler.js
rename : browser/components/BrowserGlue.jsm => browser/components/nsBrowserGlue.js
rename : browser/components/payments/PaymentUIService.jsm => browser/components/payments/paymentUIService.js
rename : browser/components/protocolhandler/WebProtocolHandlerRegistrar.jsm => browser/components/protocolhandler/WebProtocolHandlerRegistrar.js
rename : devtools/startup/AboutDebuggingNewRegistration.jsm => devtools/startup/aboutdebugging-new-registration.js
rename : devtools/startup/AboutDebuggingRegistration.jsm => devtools/startup/aboutdebugging-registration.js
rename : devtools/startup/aboutdevtools/AboutDevToolsRegistration.jsm => devtools/startup/aboutdevtools/aboutdevtools-registration.js
rename : devtools/startup/AboutDevToolsToolboxRegistration.jsm => devtools/startup/aboutdevtoolstoolbox-registration.js
rename : devtools/startup/DevToolsStartup.jsm => devtools/startup/devtools-startup.js
rename : dom/base/ProcessSelector.jsm => dom/base/ProcessSelector.js
rename : dom/base/SlowScriptDebug.jsm => dom/base/SlowScriptDebug.js
rename : dom/base/ContentAreaDropListener.jsm => dom/base/contentAreaDropListener.js
rename : dom/browser-element/BrowserElementParent.jsm => dom/browser-element/BrowserElementParent.js
rename : dom/console/ConsoleAPIStorage.jsm => dom/console/ConsoleAPIStorage.js
rename : dom/html/HTMLMenuBuilder.jsm => dom/html/htmlMenuBuilder.js
rename : dom/media/PeerConnection.jsm => dom/media/PeerConnection.js
rename : dom/notification/NotificationStorage.jsm => dom/notification/NotificationStorage.js
rename : dom/presentation/PresentationDataChannelSessionTransport.jsm => dom/presentation/PresentationDataChannelSessionTransport.js
rename : dom/presentation/PresentationNetworkHelper.jsm => dom/presentation/PresentationNetworkHelper.js
rename : dom/presentation/provider/AndroidCastDeviceProvider.jsm => dom/presentation/provider/AndroidCastDeviceProvider.js
rename : dom/presentation/provider/PresentationControlService.jsm => dom/presentation/provider/PresentationControlService.js
rename : dom/push/Push.jsm => dom/push/Push.js
rename : dom/push/PushComponents.jsm => dom/push/PushComponents.js
rename : dom/system/NetworkGeolocationProvider.jsm => dom/system/NetworkGeolocationProvider.js
rename : layout/tools/recording/RecordingCmdLine.jsm => layout/tools/recording/recording-cmdline.js
rename : netwerk/dns/mdns/libmdns/DNSServiceDiscovery.jsm => netwerk/dns/mdns/libmdns/nsDNSServiceDiscovery.js
rename : netwerk/protocol/http/UAOverridesBootstrapper.jsm => netwerk/protocol/http/UAOverridesBootstrapper.js
rename : netwerk/protocol/http/WellKnownOpportunisticUtils.jsm => netwerk/protocol/http/WellKnownOpportunisticUtils.js
rename : services/fxaccounts/FxAccountsPush.jsm => services/fxaccounts/FxAccountsPush.js
rename : services/settings/RemoteSettingsComponents.jsm => services/settings/RemoteSettingsComponents.js
rename : services/sync/Weave.jsm => services/sync/Weave.js
rename : toolkit/components/asyncshutdown/nsAsyncShutdown.jsm => toolkit/components/asyncshutdown/nsAsyncShutdown.js
rename : toolkit/components/backgroundhangmonitor/BHRTelemetryService.jsm => toolkit/components/backgroundhangmonitor/BHRTelemetryService.js
rename : toolkit/components/captivedetect/CaptiveDetect.jsm => toolkit/components/captivedetect/captivedetect.js
rename : toolkit/components/cleardata/ClearDataService.jsm => toolkit/components/cleardata/ClearDataService.js
rename : toolkit/components/contentprefs/ContentPrefService2.jsm => toolkit/components/contentprefs/ContentPrefService2.js
rename : toolkit/components/crashes/CrashService.jsm => toolkit/components/crashes/CrashService.js
rename : toolkit/components/crashmonitor/nsCrashMonitor.jsm => toolkit/components/crashmonitor/nsCrashMonitor.js
rename : toolkit/components/downloads/DownloadLegacy.jsm => toolkit/components/downloads/DownloadLegacy.js
rename : toolkit/components/gfx/SanityTest.jsm => toolkit/components/gfx/SanityTest.js
rename : toolkit/components/mozintl/mozIntl.jsm => toolkit/components/mozintl/mozIntl.js
rename : toolkit/components/mozprotocol/MozProtocolHandler.jsm => toolkit/components/mozprotocol/mozProtocolHandler.js
rename : toolkit/components/normandy/ShieldContentProcess.jsm => toolkit/components/normandy/shield-content-process.js
rename : toolkit/components/DefaultCLH.jsm => toolkit/components/nsDefaultCLH.js
rename : toolkit/components/passwordmgr/LoginInfo.jsm => toolkit/components/passwordmgr/nsLoginInfo.js
rename : toolkit/components/passwordmgr/LoginManager.jsm => toolkit/components/passwordmgr/nsLoginManager.js
rename : toolkit/components/passwordmgr/LoginManagerPrompter.jsm => toolkit/components/passwordmgr/nsLoginManagerPrompter.js
rename : toolkit/components/places/ColorAnalyzer.jsm => toolkit/components/places/ColorAnalyzer.js
rename : toolkit/components/places/PageIconProtocolHandler.jsm => toolkit/components/places/PageIconProtocolHandler.js
rename : toolkit/components/places/PlacesCategoriesStarter.jsm => toolkit/components/places/PlacesCategoriesStarter.js
rename : toolkit/components/places/UnifiedComplete.jsm => toolkit/components/places/UnifiedComplete.js
rename : toolkit/components/places/PlacesExpiration.jsm => toolkit/components/places/nsPlacesExpiration.js
rename : toolkit/components/places/TaggingService.jsm => toolkit/components/places/nsTaggingService.js
rename : toolkit/components/processsingleton/ContentProcessSingleton.jsm => toolkit/components/processsingleton/ContentProcessSingleton.js
rename : toolkit/components/processsingleton/MainProcessSingleton.jsm => toolkit/components/processsingleton/MainProcessSingleton.js
rename : toolkit/components/prompts/src/Prompter.jsm => toolkit/components/prompts/src/nsPrompter.js
rename : toolkit/components/remotebrowserutils/RemoteWebNavigation.jsm => toolkit/components/remotebrowserutils/RemoteWebNavigation.js
rename : toolkit/components/satchel/FormHistoryStartup.jsm => toolkit/components/satchel/FormHistoryStartup.js
rename : toolkit/components/satchel/FormAutoComplete.jsm => toolkit/components/satchel/nsFormAutoComplete.js
rename : toolkit/components/satchel/InputListAutoComplete.jsm => toolkit/components/satchel/nsInputListAutoComplete.js
rename : toolkit/components/search/SearchService.jsm => toolkit/components/search/nsSearchService.js
rename : toolkit/components/search/SearchSuggestions.jsm => toolkit/components/search/nsSearchSuggestions.js
rename : toolkit/components/search/Sidebar.jsm => toolkit/components/search/nsSidebar.js
rename : toolkit/components/telemetry/TelemetryStartup.jsm => toolkit/components/telemetry/TelemetryStartup.js
rename : toolkit/components/terminator/TerminatorTelemetry.jsm => toolkit/components/terminator/nsTerminatorTelemetry.js
rename : toolkit/components/thumbnails/PageThumbsStorageService.jsm => toolkit/components/thumbnails/PageThumbsStorageService.js
rename : toolkit/components/timermanager/UpdateTimerManager.jsm => toolkit/components/timermanager/nsUpdateTimerManager.js
rename : toolkit/components/tooltiptext/TooltipTextProvider.jsm => toolkit/components/tooltiptext/TooltipTextProvider.js
rename : toolkit/components/url-classifier/UrlClassifierHashCompleter.jsm => toolkit/components/url-classifier/nsUrlClassifierHashCompleter.js
rename : toolkit/components/url-classifier/UrlClassifierLib.jsm => toolkit/components/url-classifier/nsUrlClassifierLib.js
rename : toolkit/components/url-classifier/UrlClassifierListManager.jsm => toolkit/components/url-classifier/nsUrlClassifierListManager.js
rename : toolkit/components/urlformatter/URLFormatter.jsm => toolkit/components/urlformatter/nsURLFormatter.js
rename : toolkit/components/utils/SimpleServices.jsm => toolkit/components/utils/simpleServices.js
rename : toolkit/components/xulstore/XULStore.jsm => toolkit/components/xulstore/XULStore.js
rename : toolkit/mozapps/downloads/HelperAppDlg.jsm => toolkit/mozapps/downloads/nsHelperAppDlg.js
rename : toolkit/mozapps/extensions/amContentHandler.jsm => toolkit/mozapps/extensions/amContentHandler.js
rename : toolkit/mozapps/extensions/amInstallTrigger.jsm => toolkit/mozapps/extensions/amInstallTrigger.js
rename : toolkit/mozapps/extensions/amWebAPI.jsm => toolkit/mozapps/extensions/amWebAPI.js
rename : toolkit/mozapps/handling/ContentDispatchChooser.jsm => toolkit/mozapps/handling/nsContentDispatchChooser.js
rename : toolkit/mozapps/update/UpdateService.jsm => toolkit/mozapps/update/nsUpdateService.js
rename : toolkit/mozapps/update/UpdateServiceStub.jsm => toolkit/mozapps/update/nsUpdateServiceStub.js
rename : uriloader/exthandler/WebHandlerApp.jsm => uriloader/exthandler/nsWebHandlerApp.js
2019-02-14 11:50:23 +02:00
shindli
c6c323a9e4 Merge mozilla-central to inbound. a=merge CLOSED TREE
--HG--
extra : rebase_source : 4502430f7e773b654c4557946c39000735b14bb3
2019-02-14 06:58:32 +02:00
shindli
38035ee924 Merge inbound to mozilla-central. a=merge 2019-02-14 06:40:41 +02:00
Hiroyuki Ikezoe
ff820309e3 Bug 1525075 - Use the ICB size for Element.{clientWidth, clientHeight} instead of expanded the layout viewport size. r=botond
This is what Chrome does.

documentElement-clientWidth-on-minimum-scale-size.tentative.html was the test
case for this but unfortunately it was disabled in bug 1515043. And it seems
that the test case failed on Android in the first place.

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

--HG--
extra : moz-landing-system : lando
2019-02-13 23:47:32 +00:00
shindli
54aa04bfd1 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-02-13 23:36:24 +02:00
Nika Layzell
dbec7d4975 Bug 1526382 - Part 2: Make nsIClassInfo use Array<nsIIDRef> for 'interfaces', r=mccr8
This is a follow-up to the previous part, which actually changes one of
these callers to use Array<nsIIDRef> instead of [array] nsIIDPtr.

From doing this patch, it seems like we should consider changing
the type `nsIIDRef` to instead simply be `nsIID`, and treat it more like
the `AString` types from the POV of XPIDL. `nsIIDPtr` would then
continue to exist for backwards compatibility, but we can probably
remove almost all current consumers over time.

Depends on D19175

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

--HG--
extra : moz-landing-system : lando
2019-02-13 21:42:08 +00:00
Nika Layzell
330d9fd3a2 Bug 1516240 - Part 3: Directly pass BrowsingContext over IPC when possible, r=farre
This patch changes the logic such that we use the new direct
BrowsingContext ParamTraits implementation when possible, and avoids
doing manual lookups.

Depends on D19178

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

--HG--
extra : moz-landing-system : lando
2019-02-13 21:02:55 +00:00
Nika Layzell
34cef5cb0d Bug 1516240 - Part 2: Allow serializing BrowsingContext over IPC, r=farre
This patch takes the approach of taking a reference, so that we can land
it into the tree more quickly & fix issues we have.

This isn't a final solution by any means, we should also do something
along the lines of the StableState approach, but it should be sufficient
for now.

Depends on D19177

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

--HG--
extra : moz-landing-system : lando
2019-02-13 21:02:53 +00:00
Christoph Kerschbaumer
d65faafb09 Bug 1509738: CSP snapshot nonce at load start time. r=baku
--HG--
extra : rebase_source : ea232b7a3aeae9c18895e885d1536ca58c8de1bd
extra : amend_source : b0c351f8c0c1a5eb7865a735f8dc5bafb42384f1
2019-02-13 20:45:29 +01:00
Christoph Kerschbaumer
c51c70fcbc Bug 1509738 - Test nonce snapshot for CSP loades. r=jkt
--HG--
extra : rebase_source : 902e3f77336120c01af470952e67055dadf4c783
extra : amend_source : 9f2d1773d49e8d9173bf1c7405bd178a9bbd8750
2019-02-13 20:42:34 +01:00
Bryce Van Dyk
db46b71d9d Bug 1513651 - Add gtest for MP4 metadata telemetry probes. r=chutten
Add a gtest to cover the new telemetry probes which collect info on sample
description entries.

Add a new init segment to those already in our gtests. This segment has data for
one video track, and covers the case where multiple sample description entries
are present for a single track. In this case, because separate sample
description entries are used for unencrypted and encrypted samples.

For reference, the test init segment was created from our existing bipbop using
shaka-packager via the following command (non-init segments were discarded and
the output was renamed):

packager-win.exe
in=bipbop.mp4,stream=video,init_segment=bipbop_cbcs_video_init.mp4,segment_template=bipbop_cbcs_video_$Number$.m4s
--protection_scheme cbcs --enable_raw_key_encryption  --keys
label=:key_id=7e571d047e571d047e571d047e571d21:key=7e5744447e5744447e5744447e574421
--iv 11223344556677889900112233445566 --generate_static_mpd --mpd_output
bipbop_cbcs.mpd

Depends on D14426

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

--HG--
extra : moz-landing-system : lando
2019-02-11 20:15:22 +00:00
Bryce Van Dyk
3a0829bb8d Bug 1513651 - Collect telemetry on sample description box entries when parsing mp4s. r=jya
This patch adds telemetry to help us determine if mp4s with certain structures
can occur in the wild. Specifically:
- How often do mp4s have multiple entries in the sample description box?
- Do we ever see mp4s with multiple codecs in the sample description box?
- Do we ever see mp4s with multiple sets of crypto info in the sample
  description box?

This information is collected each time we parse mp4 metadata.

Remove some diagnostic asserts now that we're gracefully gathering info.

Reshuffle of DecoderData function order to align with the order in the header.

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

--HG--
extra : moz-landing-system : lando
2019-02-11 20:07:51 +00:00
Andrea Marchesini
cb1aa0d750 Bug 1518774 - Disable test_invalid_mime_type_blob.html on android. r=smaug
This test is extremely heavy and, often, on android, it timeouts.

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

--HG--
extra : rebase_source : dc1649720f20af493341a1c5d7b5b23776997707
2019-02-13 17:59:40 +00:00
Edgar Chen
8a104d860e Bug 1518121 - Part 3: Add tests for scrollable frame in Shadow DOM; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D19652

--HG--
extra : moz-landing-system : lando
2019-02-13 20:39:08 +00:00
Edgar Chen
89cf3fb922 Bug 1518121 - Part 2: Update ExplicitChildIterator correctly when we are at the end of child list of a slot parent; r=smaug
The mIndexInInserted keeps pointing to the last assigned node of a slot parent
when we are at the end of child list. So when we calles GetPreviousChild when we
are at the end of child list, ExplicitChildIterator will skip last assigned node.

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

--HG--
extra : moz-landing-system : lando
2019-02-14 10:14:33 +00:00