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

14613 Коммитов

Автор SHA1 Сообщение Дата
Markus Stange a52e472ae7 Bug 1449271 - Add a pref called gfx.compositor.glcontext.opaque that defaults to false and can be set to true in order to force the use of an opaque OpenGL context for the window on Mac. r=jrmuizel
MozReview-Commit-ID: InOKiLXGL7o

--HG--
extra : rebase_source : f21566cfb6c084ceb726e9a0331f430b6a72e4c6
2018-03-27 14:43:38 -04:00
Cosmin Sabou 6e054fe297 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-03-28 12:52:57 +03:00
Cosmin Sabou b25da47eb2 Merge inbound to mozilla-central. a=merge 2018-03-28 12:49:56 +03:00
Dan Glastonbury 6835957d77 Bug 1446233 - P2: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: EZXfIxBRyG4

--HG--
extra : rebase_source : a0d903e0b64bb72e0dc70a3d9fccee0e9636ef56
2018-03-22 15:33:25 +10:00
Xidorn Quan 2d757b0424 Bug 1449089 part 3 - Remove pref layout.css.scope-pseudo.enabled. r=emilio
It was never effective in Stylo anyway.

MozReview-Commit-ID: EF7NnS6uxOO

--HG--
extra : rebase_source : 8d924fad9958cf12c746156241c51c3a6488020f
2018-03-28 09:41:04 +11:00
Nicholas Nethercote fd81947ea1 Bug 1448220 - Convert all network predictor VarCache prefs to the new StaticPrefList form. r=hurley
MozReview-Commit-ID: JiPbv84btDc

--HG--
extra : rebase_source : 46fb2b41d4233341166ced3a67100a086a7ffad7
2018-03-16 13:26:04 +11:00
Nicholas Nethercote 4b59ef73a8 Bug 1449357 - Let prefs in data files override prefs in StaticPrefsList.h. r=glandium
This removes our ability to detect when an unnecessary override is occurring,
but it's necessary for Thunderbird to work.

MozReview-Commit-ID: GZYLnEEVuvd

--HG--
extra : rebase_source : ff3f7163252176d78ecf11589cebeae99f987985
2018-03-28 11:02:16 +11:00
Margareta Eliza Balazs ecdbb83fa1 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-03-28 01:00:31 +03:00
Jeff Muizelaar d07c300116 Bug 1388842. Add blob invalidation. r=mstange
MozReview-Commit-ID: 5xwqlULUbZe
2018-03-27 17:31:04 -04:00
Tom Ritter 278a49f747 Bug 1448869 Set Timer Precision to 100 us (with Jitter) r=baku
MozReview-Commit-ID: HV1rG4Kzg9k

--HG--
extra : rebase_source : ff1c8afa3a58081a6846f6b5a2dc868e4ae5af61
2018-03-26 11:41:59 -05:00
Nicholas Nethercote 7f61125977 Bug 1436655 - Fix up two minor mistakes in comments. r=me
DONTBUILD because it's a comment-only change.

MozReview-Commit-ID: 4x58HTaPELJ

--HG--
extra : rebase_source : 16ca292d6b722fb30fd1822921e6a8aac9f79a25
2018-03-27 16:31:01 +11:00
Nicholas Nethercote 136f284c7d Bug 1436655 - Introduce a mechanism for VarCache prefs to be defined entirely in the binary. r=glandium
Currently VarCache prefs are setup in two parts:

- The vanilla pref part, installed via a data file such as all.js, or via an
  API call.

- The VarCache variable part, setup by an Add*VarCache() call.

Both parts are needed for the pref to actually operate as a proper VarCache
pref. (There are various prefs for which we do one but not the other unless a
certain condition is met.)

This patch introduces a new way of doing things. There is a new file,
modules/libpref/init/StaticPrefList.h, which defines prefs like this:

> VARCACHE_PREF(
>   "layout.accessiblecaret.width",
>   layout_accessiblecaret_width,
>   float, 34.0
> )

This replaces both the existing parts.

The preprocessor is used to generate multiple things from this single
definition:

- A global variable (the VarCache itself).

- A getter for that global variable.

- A call to an init function that unconditionally installs the pref in the
  prefs hash table at startup.

C++ files can include the new StaticPrefs.h file to access the getter.

Rust code cannot use the getter, but can access the global variable directly
via structs.rs. This is similar to how things currently work for Rust code.

Non-VarCache prefs can also be declared in StaticPrefList.h, using PREF instead
of the VARCACHE_PREF.

The new approach has the following advantages.

+ It eliminates the duplication (in all.js and the Add*VarCache() call) of the
  pref name and default value, preventing potential mismatches. (This is a real
  problem in practice!)

+ There is now a single initialization point for these VarCache prefs.
  + This avoids need to find a place to insert the Add*VarCache() calls, which
    are currently spread all over the place.
  + It also eliminates the common pattern whereby these calls are wrapped in a
    execute-once block protected by a static boolean (see bug 1346224).
  + It's no longer possible to have a VarCache pref for which only one of the
    pieces has been setup.

+ It encapsulates the VarCache global variable, so there is no need to declare
  it separately.

+ VarCache reads are done via a getter (e.g. StaticPrefs::foo_bar_baz())
  instead of a raw global variable read.
  + This makes it clearer that you're reading a pref value, and easier to
    search for uses.
  + This prevents accidental writes to the global variable.
  + This prevents accidental mistyping of the pref name.
  + This provides a single chokepoint in the code for such accesses, which make
    adding checking and instrumentation feasible.

+ It subsumes MediaPrefs, and will allow that class to be removed. (gfxPrefs is
  a harder lift, unfortunately.)

+ Once all VarCache prefs are migrated to the new approach, the VarCache
  mechanism will be better encapsulated, with fewer details publicly visible.

+ (Future work) This will allow the pref names to be stored statically, saving
  memory in every process.

The main downside of the new approach is that all of these prefs are in a
single header that is included in quite a few places, so any changes to this
header will cause a fair amount of recompilation.

Another minor downside is that all VarCache prefs are defined and visible from
start-up. For test-only prefs like network.predictor.doing-tests, having them
show in about:config isn't particularly useful.

The patch also moves three network VarCache prefs to the new mechanism as a
basic demonstration. (And note the inconsistencies in the multiple initial
values that were provided for
network.auth.subresource-img-cross-origin-http-auth-allow!) There will be
numerous follow-up bugs to convert the remaining VarCache prefs.

MozReview-Commit-ID: 9ABNpOR16uW
* * *
[mq]: fixup

MozReview-Commit-ID: 6ToT9dQjIAq
2018-03-26 09:39:40 +11:00
Nicholas Nethercote e85bbc21df Bug 1436655 - Tweak assertions in Add*VarCache() functions. r=glandium
This avoids some repetition.

MozReview-Commit-ID: I7aD8JUCCK4
2018-03-23 15:15:20 +11:00
Nicholas Nethercote b5ed6c2349 Bug 1436655 - Tweak the comment at the top of init/all.js. r=glandium
- The first two SYNTAX HINTS are wrong, and citing the syntax is more useful
  than specifying a single example of what isn't allowed.

- The sentence about #ifdefs is wrong. (#ifdefs appear all throughout, and
  prefs are only specified once.)

- I chose a better example file.

MozReview-Commit-ID: JyYFyutqrFD
2018-03-15 14:59:29 +11:00
Nicholas Nethercote 0dfbeba283 Bug 1436655 - Rename pref_SetPref()'s aFromFile argument as aFromInit. r=glandium
Currently all pref initialization is done from file, but soon we will also be
initializing prefs from code compiled into the binary. The new name encompasses
both cases.

MozReview-Commit-ID: 5g0jfjHTvnE

--HG--
extra : rebase_source : 938b33626594992846377c5d1b684b1dbf96cb57
2018-02-14 18:50:53 +11:00
Xidorn Quan 3181988f2e Bug 1449400 part 2 - Remove some dependencies from ServoStyleSet.h and add some random stuff to fix breakage. r=emilio
Some of the definitions are needed for the headers removal in
following patches.

MozReview-Commit-ID: BCj7U7RgBLj

--HG--
extra : rebase_source : e8e437f76c4db6ec930ea0481b6c1a38129a5477
extra : source : a1c42220e5070fa4beea438859ab0daec3f3fe7b
2018-03-29 22:15:46 +11:00
Nicholas Nethercote e41e8bc23c Bug 1444275 - Reinstate an assertion. r=me
This change was supposed to happen in the previous patch from this bug.

MozReview-Commit-ID: 93dFyFBbWwO

--HG--
extra : rebase_source : d348dd4a4140f4482bcf493346cf58bd5ef6475b
2018-03-26 14:56:43 +11:00
Andrea Marchesini a90cff1ced Bug 1447210 - Upper-case log levels for Console.createInstance(), r=bgrins 2018-03-24 08:21:01 +01:00
Boris Zbarsky de9297b4bf Bug 1448048. Restrict the window.Components shim to non-nightly-only to see whether sites actually use it. r=mccr8
MozReview-Commit-ID: 6W1nEyKGlER
2018-03-23 12:53:48 -04:00
Emilio Cobos Álvarez 800551a615 Bug 1448415: Hide getPropertyCSSValue on nightly. r=bz
MozReview-Commit-ID: ItqKUMZEpoX
2018-03-24 01:00:43 +01:00
Gurzau Raul f2571e02d0 Backed out changeset 94a8e9c4c345 (bug 1448048) for Robocop failures on Android on a CLOSED TREE 2018-03-23 23:29:02 +02:00
Boris Zbarsky 0327e321d5 Bug 1448048. Restrict the window.Components shim to non-nightly-only to see whether sites actually use it. r=mccr8
MozReview-Commit-ID: 6W1nEyKGlER
2018-03-23 12:53:48 -04:00
Cosmin Sabou c17fce3462 Merge mozilla-central to inbound. a=merge on a CLOSED TREE 2018-03-23 15:32:33 +02:00
Cosmin Sabou d5f5fb893c Backed out 3 changesets (bug 1446233) for permafailing on dom/media/tests/mochitest/test_peerConnection_replaceTrack.html. a=backout
Backed out changeset 9b72102a99b3 (bug 1446233)
Backed out changeset 6f3488ff7c60 (bug 1446233)
Backed out changeset 20301e359a4e (bug 1446233)
2018-03-23 15:18:23 +02:00
Jonathan Kew 3d5c891570 Bug 1447163 - Enable support for OpenType variation fonts. r=dbaron 2018-03-23 10:35:28 +00:00
Dan Glastonbury ac492b197c Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: 7TVfYE9DEwp

--HG--
extra : rebase_source : e725ea784360e8d2061dbf4193c7074fde3cfdd1
2018-03-22 15:33:25 +10:00
shindli 5d297279b1 Backed out 3 changesets (bug 1446233) for Wr failures in /html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html on a CLOSED TREE
Backed out changeset ed217fb39a92 (bug 1446233)
Backed out changeset f5bec009a111 (bug 1446233)
Backed out changeset a71dd6219f8a (bug 1446233)
2018-03-23 04:11:01 +02:00
Dan Glastonbury ac696a0587 Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: I4BL7Ad2xtI

--HG--
extra : rebase_source : 984378bf2fbca347762b3096f75069b7721c97be
2018-03-22 15:33:25 +10:00
Mathieu Leplatre 76bc359e79 Bug 1397230 - Generalize blocklist clients to remote settings clients r=mgoodwin
MozReview-Commit-ID: 9VAsTFCuZUf

--HG--
rename : services/common/tests/unit/test_blocklist_updater.js => services/common/tests/unit/test_remote_settings_poll.js
extra : rebase_source : 9da338f18f3860e124b315a8be3340997343e2f3
2018-03-13 16:23:57 +01:00
Emilio Cobos Álvarez e341b20ec4 Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt on a CLOSED TREE
MozReview-Commit-ID: JPopq0LudD
2018-03-22 20:06:24 +01:00
Emilio Cobos Álvarez 5dd797f154 Back out changeset b683bb3f22a1 (Bug 1447483) for not landing with all the files. r=me on a CLOSED TREE
This reverts commit 1808914126bb9f9e4a82d2c3d7ac961885fe7d62.

MozReview-Commit-ID: 5skESBseEvo
2018-03-22 20:05:22 +01:00
Emilio Cobos Álvarez ca5ac79cca Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt
MozReview-Commit-ID: JPopq0LudD
2018-03-22 19:48:42 +01:00
arthur.iakab 5e8092339a Merge mozilla-central to inbound
--HG--
rename : browser/base/content/test/general/bug364677-data.xml => browser/components/feeds/test/bug364677-data.xml
rename : browser/base/content/test/general/bug364677-data.xml^headers^ => browser/components/feeds/test/bug364677-data.xml^headers^
rename : browser/base/content/test/general/test_bug364677.html => browser/components/feeds/test/test_bug364677.html
rename : services/sync/tps/extensions/tps/bootstrap.js => services/sync/tps/extensions/tps/components/tps-cmdline.js
rename : testing/talos/talos/pageloader/bootstrap.js => testing/talos/talos/pageloader/components/tp-cmdline.js
rename : testing/talos/talos/startup_test/sessionrestore/addon/bootstrap.js => testing/talos/talos/startup_test/sessionrestore/addon/SessionRestoreTalosTest.js
rename : testing/talos/talos/talos-powers/bootstrap.js => testing/talos/talos/talos-powers/components/TalosPowersService.js
rename : tools/quitter/bootstrap.js => tools/quitter/QuitterObserver.js
extra : rebase_source : 5801e95a945b54754f27571e7b211e1eac132d67
2018-03-21 22:27:21 +02:00
arthur.iakab abcb47d8cc Merge inbound to mozilla-central. a=merge 2018-03-21 21:13:11 +02:00
Jan Odvarko 990ab32239 Bug 1223726 - Customize response body interception; r=ochameau
* Introduce pref for custom response body limit
* Introduce pref for saving request/response bodies

MozReview-Commit-ID: 7DrAU1did1a

--HG--
extra : rebase_source : 86117d796357defad79afac890655c28f4d44587
2018-03-12 08:10:39 +01:00
Valentin Gosu 9bff145dee Bug 1442242 - Make the constructor of nsJARURI private r=mayhemer
MozReview-Commit-ID: 2X1mu5576u1

--HG--
extra : rebase_source : 9cfc50d74c407f5fb88768db072cb0fdfbd8ad1c
2018-03-20 12:52:47 +01:00
Noemi Erli 3e8b48fa31 Backed out 3 changesets (bug 1442242) for fatal error LNK1120: 1 unresolved externals bustages on a CLOSED TREE
Backed out changeset 9f37df3c62e1 (bug 1442242)
Backed out changeset 65b8727bfe76 (bug 1442242)
Backed out changeset 88130a542fb3 (bug 1442242)
2018-03-20 16:45:34 +02:00
Valentin Gosu 332caf8d4f Bug 1442242 - Make the constructor of nsJARURI private r=mayhemer
MozReview-Commit-ID: 2X1mu5576u1

--HG--
extra : rebase_source : 9cfc50d74c407f5fb88768db072cb0fdfbd8ad1c
2018-03-20 12:52:47 +01:00
Liang-Heng Chen 9a06318245 Bug 1373708 - Convert Jar channels to stop using main thread I/O, r=nwgh 2018-03-01 08:12:00 +00:00
Ryan Hunt e34eeaaa86 Remove DisplayItemLayer and corresponding layers.advanced prefs. (bug 1439960, r=mstange)
MozReview-Commit-ID: FAWTC1Llu31

--HG--
extra : rebase_source : 05bda872389db5cc61e805c3eb48e70eb5d95cbe
2018-02-21 09:29:49 -06:00
Emilio Cobos Álvarez a0d49d986b Bug 1447611: Cleanup prefs that do nothing now. r=jwatt
Still more followup cleanup to come.

MozReview-Commit-ID: 83j7DTVb0Ti
2018-03-21 19:13:56 +01:00
Emilio Cobos Álvarez 24cf27d33c Bug 1447611: Remove --enable-stylo and --enable-stylo-build-bindgen. r=froydnj
Will remove the prefs and stuff in a followup.

MozReview-Commit-ID: HVyfbHOEQYI
2018-03-21 19:13:26 +01:00
Csoregi Natalia d6c6d38406 Backed out 4 changesets (bug 1447611) for mass failures due to --enable-stylo removal. CLOSED TREE
Backed out changeset c6193142bbcf (bug 1447611)
Backed out changeset 01ada1c5a95f (bug 1447611)
Backed out changeset 86c9fed44da2 (bug 1447611)
Backed out changeset bb84ac6e1468 (bug 1447611)
2018-03-21 19:01:07 +02:00
Emilio Cobos Álvarez f8eadb8613 Bug 1447611: Cleanup prefs that do nothing now. r=jwatt
Still more followup cleanup to come.

MozReview-Commit-ID: 83j7DTVb0Ti
2018-03-21 17:25:00 +01:00
Emilio Cobos Álvarez 330ddd82bf Bug 1447611: Remove --enable-stylo and --enable-stylo-build-bindgen. r=froydnj
Will remove the prefs and stuff in a followup.

MozReview-Commit-ID: HVyfbHOEQYI
2018-03-21 17:24:41 +01:00
shindli 55e9f63bac Merge inbound to mozilla-central. a=merge 2018-03-20 12:11:27 +02:00
Nicholas Nethercote 6aff850dcd Bug 1444275 - Remove the *InAnyProcess() functions. r=glandium
All pref-modifying operations now only occur in the parent process. Hooray!

MozReview-Commit-ID: GDVsda4rw5f

--HG--
extra : rebase_source : 4f8484f0751212120078b3ba1a32930bc9c5ed8a
2018-03-13 14:34:14 +11:00
Nicholas Nethercote 22b2a2e3c2 Bug 1444275 - Don't set the telemetry pref in content processes. r=glandium
It'll be set via the normal parent-to-child pref setting process.

MozReview-Commit-ID: By4mG7brc55

--HG--
extra : rebase_source : 480a289edf81b36395619a3bb9f5a1e065cb33d8
2018-03-13 14:33:48 +11:00
Nicholas Nethercote 6b81d0b99f Bug 1436911 - Avoid the early/late prefs split. r=glandium
All prefs that need to be sent to a new content process are now put into the
shared memory segment, and they are identified by the pref name instead of an
index into a list. The old IPC used at process startup (in XPCOMInitData) is
removed.

Benefits:

- It removes the need for the early prefs list
  (dom/ipc/ContentProcesses.{h,cpp}) and the associated checking, which is ugly
  and often trips people up (e.g. bug 1432979, bug 1439406).

- Using prefnames instead of indices fixes some fragility (fixing bug 1419432).

- It fixes the problem of early prefs being installed as unlocked default
  values even if they are locked and/or have user values.

MozReview-Commit-ID: FRIzHF8Tjd
2018-03-08 15:47:24 +11:00
Andreea Pavel d0f089f05d Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-03-20 00:43:40 +02:00
Andreea Pavel 7062e6b6a2 Merge mozilla-inbound to mozilla-central. a=merge 2018-03-20 00:39:56 +02:00
Honza Bambas 0998499d37 Bug 1444975 - Switch to HTTP throttling v2 algorithm. r=valentin
--HG--
extra : amend_source : fcda726deb971ab73cd5df288af104064243351c
2018-03-12 11:23:00 -04:00
Honza Bambas c940bbdf06 Bug 1430659 - Network requests in "blocked" state for long time (1+ minute) when ipv6 hosts are no longer available. r=valentin 2018-03-16 09:06:00 -04:00
Tom Ritter ddc1a8bd70 Bug 1422245 Disable @-moz-document in content pages r=emilio
Previously we had disabled them in content pages on Nightly and Early Beta,
now we're ready to let this ride the trains in 61.

We're going to land this ahead of Bug 1446470 which is specifically about
url-prefix().

MozReview-Commit-ID: AGDHt1snyjU

--HG--
extra : rebase_source : 7f26f898ff887cd4915d5b5a7bd7c3de0476a803
2018-03-18 12:48:18 -05:00
Csoregi Natalia 3c08257ba3 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-03-18 23:49:30 +02:00
Robert Longson 32c95b809e Bug 1443314 - remove the svg.path-caching.enabled pref r=jwatt 2018-03-18 14:05:28 +00:00
Noemi Erli 7d3bd4c6aa Backed out 2 changesets (bug 1373708) for frequent xpcshell failures in xpcshell.ini:toolkit/components/extensions/test/xpcshell/test_ext_startup_perf.js a=backout
Backed out changeset b3bb4c38a0ef (bug 1373708)
Backed out changeset a06dc76c6ed8 (bug 1373708)

--HG--
extra : amend_source : 79ebbfd9e9cccc081cc3211f814f3ab9df70d41c
2018-03-17 23:37:27 +02:00
Liang-Heng Chen e0247381b3 Bug 1373708 - Convert Jar channels to stop using main thread I/O, r=nwgh 2018-03-01 08:12:00 +02:00
Sebastian Hengst d247fb5f4e Bug 1445763 - Update moz.build meta data with "Firefox Build System". r=froydnj
MozReview-Commit-ID: 3FrWJ6441pe

--HG--
extra : rebase_source : c8f1dc45041132252e28869ada6a386270267431
2018-03-14 21:44:46 +01:00
Andreea Pavel e5950c0d39 Backed out 2 changesets (bug 1442239) for xpcshell failures at widget/tests/unit/test_taskbar_jumplistitems.js on a CLOSED TREE
Backed out changeset 513cd669aca1 (bug 1442239)
Backed out changeset aef4c73f736f (bug 1442239)
2018-03-19 21:19:26 +02:00
Valentin Gosu f0c7a1ae13 Bug 1442239 - Make URI deserialization (nsISerializable.read) happen via nsIURIMutator only r=mayhemer
* Deserialization now only happens via a mutator
* The CID for URI implementations actually returns the nsIURIMutator for each class
* The QueryInterface of mutators implementing nsISerializable will now act as a finalizer if passed the IID of an interface implemented by the URI it holds

MozReview-Commit-ID: H5MUJOEkpia

--HG--
extra : rebase_source : 8ebb459445cab23288a6c4c86e4e00c6ee611e34
2018-03-08 13:35:10 +01:00
Johann Hofmann 0597624c36 Bug 1425613 - Part 1 - Record and expose pref access statistics in nsIPrefService in debug mode. r=njn
These statistics will be used by browser tests to analyze frequently accessed
preferences so that we can recommend using preference observers instead.

MozReview-Commit-ID: 9uZnwmjZL4U

--HG--
extra : rebase_source : c8a8e624f06dfff12d8503a7c8299a0051192339
2018-03-01 13:59:43 +01:00
Brian Birtles ee9982905f Bug 1420320 - Drop dom.animations-api.pending-member.enabled pref; r=bz,hiro
This pref was introduced in case we encountered compatibility issues from
changing the return value of Animation.playState (bug 1412765). Now that the
change to Animation.playState has shipped to release channel without any known
problems we should drop this pref.

MozReview-Commit-ID: CwMWRRtIf6u

--HG--
extra : rebase_source : b26c59a51880406c2b94baad8da2eafeb3ae3202
2018-03-16 12:49:55 +09:00
Jonathan Kingston 774ae150bf Bug 1445951 - Treat object subrequests as mixed content. r=ckerschb
MozReview-Commit-ID: F7HgoAaVW7C

--HG--
extra : rebase_source : 7c5fa71818ba1c05294925d1435ddc040c06274d
2018-03-15 14:20:40 +00:00
shindli 9bfc016707 Merge inbound to mozilla-central. a=merge 2018-03-15 12:15:17 +02:00
Kris Maglione 83371fe0b5 Bug 1445551: Part 4 - Remove compartment-per-addon. r=mccr8
The compartment-per-addon code was added so that we could segregate at least
some of the code from system-privileged add-ons into tagged compartments, even
when it ran in browser windows. That allowed us to apply certain special
behavior to them, such as enabling e10s shims, and to track some performance
characteristics.

The only remaining chrome-privileged add-ons now are system add-ons controlled
by us, and the shim system and per-compartment performance metrics are gone,
it no longer serves a purpose.

MozReview-Commit-ID: Ap186bWAaqP

--HG--
extra : rebase_source : c5bf81b44dd42b7cebce2784b7dd98480b41b593
2018-03-13 19:43:30 -07:00
Kris Maglione 3bff085af2 Bug 1445551: Part 2 - Remove multiprocessCompatible flag. r=aswan
We no longer support legacy extensions with e10s shims, and the only remaining
uses that matter are in-tree test harnesses, which have been fixed. This flag
no longer serves a purpose.

MozReview-Commit-ID: EdCNqF4MttN

--HG--
extra : rebase_source : 0fef334354faa7541628614cb964a29faaa9df41
2018-03-13 19:02:42 -07:00
Andreea Pavel 363ad2007d Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-03-15 00:11:42 +02:00
Daniel Holbert ad2f6c8b77 Backed out changeset 3187e7424f01 (bug 1444139) because it still regresses google docs on some configurations. 2018-03-14 14:06:08 -07:00
Masayuki Nakano 162ea38a55 Bug 1444572 - IMContextWrapper should dispatch fake eKeyDown event during composition if active IM is uim r=m_kato
uim is an old IM which uses key snooper to listen to key events rather than
via filter key event API which should be called by applications.  It's still
used by Debian 9.x, so, we still need to support this.

Unfortunately, we cannot detect if uim actually uses key snooper because it's
switch by build option of uim.  Currently, Debian builds uim as using key
snooper.  So, we should assume uim uses key snooper always.  On the other
hand, somebody *might* use uim built as not using key snooper, so, let's
decide if uim uses key snooper with new pref,
"intl.ime.hack.uim.using_key_snooper", but its default should be true.

Note that ibus and Fcitx also have the mode to use key snooper (perhaps for
backward compatibility with uim).  However, it's not enabled in default
settings and even if it's enabled, Firefox is in whitelist in the default
settings of them for stop using key snooper.  Therefore, we don't need to
support key snooper mode for them unless we'll get some requests to
support their key snooping mode.

MozReview-Commit-ID: 6fTsfKrHzvo

--HG--
extra : rebase_source : 8ddf4541db635246e6bb0ddc73b012c9be001c6d
2018-03-12 15:41:39 +09:00
arthur.iakab 8976abf9ca Merge inbound to mozilla-central. a=merge 2018-03-14 12:00:13 +02:00
Kearwood Gilbert d0b2b8da65 Bug 1436791 - Implement gfxVRExternal,r=rbarker
- gfxVRExternal Enables other processes to present
  real or simulated VR hardware to Firefox.
- This functionality is disabled by default, under
  dom.vr.external.enabled.
- VRDisplayInfo, VRControllerInfo, and associated
  structs have been restructured to ensure internal
  state is not exposed via shmem interface.
- Some refactoring to convert structs to
  POD types, enabling them to be located
  in shmem and be memcpy'd.
- Work needed before unpreffing marked
  with "TODO" comments.
MozReview-Commit-ID: FbsusbxuoQ8

--HG--
extra : rebase_source : 8a448169c3f47411c705a4d9fd462a1f9363dfd9
extra : amend_source : e6702549527292e2850d16e8f503f0be9848159f
2018-03-13 17:09:54 -07:00
Masayuki Nakano fcb248a698 Bug 1343451 - part 5: Make GeckoEditableSupport dispatch dummy eKeyDown and eKeyUp event during composition always r=jchen
On Android, GeckoEditableSupport has already dispatched eKeyDown event and
eKeyUp event even during composition.  I.e., the pref which will be enabled
by bug 354358 has already been set to true only on Android.

On the other hand, GeckoEditableSupport does not dispatch them if content
listens to "input", "compositionstart", "compositionupdate" or
"compositionend".  So, different from the other platforms, we need additional
pref to make the new behavior behind pref.

Therefore, this patch adds a new pref,
"intl.ime.hack.on_any_apps.fire_key_events_for_composition", to override
existing "intl.ime.hack.on_ime_unaware_apps.fire_key_events_for_composition"
pref.  And sets mKeyCode and mKeyNameIndex of the dummy KeyboardEvents to
NS_VK_PROCESSKEY and KEY_NAME_INDEX_Process.

MozReview-Commit-ID: Fuy0Ir2xiO5

--HG--
extra : rebase_source : c76b613ea186458ebdf0d67f4bc984e8ac5f1041
2018-02-27 17:24:35 +09:00
Dorel Luca b10a3945a4 Backed out changeset e226de7caa88 (bug 1444572) for conflicts while backing out 1443421 2018-03-14 12:28:59 +02:00
arthur.iakab 6153368440 Merge mozilla-central to autoland 2018-03-14 12:16:00 +02:00
Masayuki Nakano d23a5323b4 Bug 1444572 - IMContextWrapper should dispatch fake eKeyDown event during composition if active IM is uim r=m_kato
uim is an old IM which uses key snooper to listen to key events rather than
via filter key event API which should be called by applications.  It's still
used by Debian 9.x, so, we still need to support this.

Unfortunately, we cannot detect if uim actually uses key snooper because it's
switch by build option of uim.  Currently, Debian builds uim as using key
snooper.  So, we should assume uim uses key snooper always.  On the other
hand, somebody *might* use uim built as not using key snooper, so, let's
decide if uim uses key snooper with new pref,
"intl.ime.hack.uim.using_key_snooper", but its default should be true.

Note that ibus and Fcitx also have the mode to use key snooper (perhaps for
backward compatibility with uim).  However, it's not enabled in default
settings and even if it's enabled, Firefox is in whitelist in the default
settings of them for stop using key snooper.  Therefore, we don't need to
support key snooper mode for them unless we'll get some requests to
support their key snooping mode.

MozReview-Commit-ID: 6fTsfKrHzvo

--HG--
extra : rebase_source : 8ddf4541db635246e6bb0ddc73b012c9be001c6d
2018-03-12 15:41:39 +09:00
Tarek Ziadé 86edd52973 Bug 1437438 - Add a performance counter to track scheduler activity - r=farre,froydnj
Adds a PeformanceCounter class that is used in DocGroup and WorkerPrivate
to track runnables execution and dispatch counts.

MozReview-Commit-ID: 51DLj6ORD2O

--HG--
extra : rebase_source : b481c9aa3b735569722bb7472872ec2d22adcb89
2018-03-06 10:19:19 +01:00
Emilio Cobos Álvarez ae450c4678 Bug 1446470: Add another pref to control the url-prefix hack. r=xidorn,smaug
MozReview-Commit-ID: D4qL0oO69Uh
2018-03-19 13:20:40 +01:00
Masayuki Nakano a684a2500b Bug 1446401 - Start to dispatch "keydown" event and "keyup" event even during in composition in Nightly and early Beta r=smaug
For confirming to UI Events spec, we should dispatch "keydown" event and
"keyup" event even during in composition.

This patch makes only Nightly and early Beta start to dispatch those events
during a composition.

MozReview-Commit-ID: 8md7NtSdurJ

--HG--
extra : rebase_source : 2527089ee2844ee6a816ee3afae461275c61c409
2018-02-28 22:19:09 +09:00
Ted Mielczarek dcdf597820 bug 1255485 - build PROGRAMs directly in dist/bin instead of copying them. r=nalexander
Historically we built all our binaries in directories in the objdir, then
symlinked them into dist/bin. Some binaries needed to be copied instead
so that certain relative path lookups work properly, so we resorted to
sprinkling `NSDISTMODE=copy` around Makefiles.

This change makes it so we build PROGRAMs (not any other sort of targets)
directly in dist/bin instead. We could do the same for our other targets
with a little more work.

There were several places in the tree that were copying built binaries to
some other place and needed fixup to match the new location of binaries.

On Windows pdb files are left in the objdir where the program was
originally linked. symbolstore.py needs to locate the pdb file both to
determine whether it should dump symbols for a binary and also to copy
the pdb file into the symbol package. We fix this by simply looking for
the pdb file in the current working directory if it isn't present next
to the binary, which matches how we invoke symbolstore.py.

MozReview-Commit-ID: 8TOD1uTXD5e
2018-01-10 14:26:12 -05:00
Andreea Pavel d9d9517a78 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-03-20 00:42:18 +02:00
Kartikaya Gupta c9ab45d675 Bug 1188955 - Turn the MAX_TAP_TIME into a preffable value. r=botond
MozReview-Commit-ID: HCiCd7vxTnF

--HG--
extra : rebase_source : 33f9222e3e9510ed669a9335900c945af463599a
2018-03-19 16:58:33 -04:00
Valentin Gosu af5eeff2e3 Bug 1442239 - Make URI deserialization (nsISerializable.read) happen via nsIURIMutator only r=mayhemer
* Deserialization now only happens via a mutator
* The CID for URI implementations actually returns the nsIURIMutator for each class
* The QueryInterface of mutators implementing nsISerializable will now act as a finalizer if passed the IID of an interface implemented by the URI it holds

MozReview-Commit-ID: H5MUJOEkpia

--HG--
extra : rebase_source : 01c8d16f7d31977eda6ca061e7889cedbf6940c2
2018-03-19 20:22:32 +01:00
Andrew Osmond fcac2b8040 Bug 1435291 - Part 1. Enable shared surfaces by default with WebRender. r=jrmuizel 2018-03-13 15:58:59 -04:00
Andreea Pavel 8fa0b32c84 Merge mozilla-inbound to mozilla-cenral. a=merge 2018-03-13 19:01:32 +02:00
Andreea Pavel 2c3aa80457 Backed out changeset 9e3a9fb7c903 (bug 1373708) for devtools failures at browser/base/content/test/static/browser_all_files_referenced.js and xpcshell failures at toolkit/mozapps/extensions/test/xpcshell/test_webextension_install.js on a CLOSED TREE 2018-03-13 15:46:12 +02:00
Liang-Heng Chen a25cefc942 Bug 1373708 - Convert Jar channels to stop using main thread I/O, r=nwgh 2018-03-01 08:12:00 +02:00
Narcis Beleuzu 298d1d55b5 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-03-13 12:36:54 +02:00
Emilio Cobos Álvarez de099db7bd Bug 1444905: Remove scoped style support from the old style system. r=xidorn,smaug
Summary: It uses two node bits that can be better suited for something else.

Reviewers: xidorn, smaug

Bug #: 1444905

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

MozReview-Commit-ID: HIPDtHm6xpM
2018-03-13 10:26:13 +01:00
Daniel Holbert 85a7004f55 Bug 1444139: Re-enable support for webkit-prefixed pixel-density media queries (e.g. -webkit-min-device-pixel-ratio) r=xidorn
MozReview-Commit-ID: EqwsynLihb1

--HG--
extra : rebase_source : 3607e8172a956f6a6cfc798c112d4dc365e6f97b
2018-03-12 12:50:04 -07:00
Andrew Swan 7b4af80995 Bug 1444487 Add preference for langpack signing r=kmag
MozReview-Commit-ID: FEPa2wlLBST

--HG--
extra : rebase_source : c5e452dd62a3c913a096cfead60d5ee8eaf72489
2018-03-09 11:31:39 -08:00
Nicholas Nethercote e16e5a3c78 Bug 1444276 - Refactor the telemetry pref setting code. r=glandium,chutten
This patch doesn't change the functionality, it just splits out the code into
separate functions that are easier to read.

MozReview-Commit-ID: Gx05YCxGgve

--HG--
extra : rebase_source : 3b7250cea630bebf35992bb69e651509c863c1c6
2018-03-09 16:39:31 +11:00
Nicholas Nethercote f87fadb9cb Bug 1438433 - Remove the network.predictor.redirect-likely-confidence pref. r=hurley.
It's unused.

MozReview-Commit-ID: DmHwJ3oW3Vq

--HG--
extra : rebase_source : 89d49a7d680e07383de82c2b4cb3a74a13f09c1e
2018-03-07 15:50:14 +11:00
Nicholas Nethercote 68124009fc Bug 1438678 - Pass early prefs via shared memory instead of the command line. r=bobowen,jld,glandium.
This patch replaces the large -intPrefs/-boolPrefs/-stringPrefs flags with
a short-lived, anonymous, shared memory segment that is used to pass the early
prefs.

Removing the bloat from the command line is nice, but more important is the
fact that this will let us pass more prefs at content process start-up, which
will allow us to remove the early/late prefs split (bug 1436911).

Although this mechanism is only used for prefs, it's conceivable that it could
be used for other data that must be received very early by children, and for
which the command line isn't ideal.

Notable details:

- Much of the patch deals with the various platform-specific ways of passing
  handles/fds to children.

  - Linux and Mac: we use a fixed fd (8) in combination with the new
    GeckoChildProcessHost::AddFdToRemap() function (which ensures the child
    won't close the fd).

  - Android: like Linux and Mac, but the handles get passed via "parcels" and
    we use the new SetPrefsFd() function instead of the fixed fd.

  - Windows: there is no need to duplicate the handle because Windows handles
    are system-wide. But we do use the new
    GeckoChildProcessHost::AddHandleToShare() function to add it to the list of
    inheritable handles. We also ensure that list is processed on all paths
    (MOZ_SANDBOX with sandbox, MOZ_SANDBOX without sandbox, non-MOZ_SANDBOX) so
    that the handles are marked as inheritable. The handle is passed via the
    -prefsHandle flag.

  The -prefsLen flag is used on all platforms to indicate the size of the
  shared memory segment.

- The patch also moves the serialization/deserialization of the prefs in/out of
  the shared memory into libpref, which is a better spot for it. (This means
  Preferences::MustSendToContentProcesses() can be removed.)

MozReview-Commit-ID: 8fREEBiYFvc

--HG--
extra : rebase_source : 7e4c8ebdbcd7d74d6bd2ab3c9e75a6a17dbd8dfe
2018-02-16 17:54:16 +11:00
Kartikaya Gupta 99522f2154 Bug 1258238 - Remove code that displays visibility visualization on the APZ minimap. r=mattwoodrow
This code was originally added to debug the frame visibility code.
However it wasn't architected correctly and makes the compositor use an
untrusted layers id from content. Instead of fixing this I'd rather just
delete it, since it's a big pile of code that is basically a debugging
tool that nobody owns anymore.

MozReview-Commit-ID: nPZqVeYsFp
2018-03-12 14:17:34 -04:00
Jan de Mooij 705961f02e Bug 1442561 part 3 - Flip the pref. r=me 2018-03-11 21:11:33 +01:00
Jan de Mooij 3125869f12 Bug 1442561 part 1 - Add browser pref for misc Spectre object type mitigations. r=luke 2018-03-11 20:14:03 +01:00
Kris Maglione a25db8235e Bug 1444502: Remove support for installing unpacked extensions. r=aswan
This retains support for installing unpacked dictionaries, since Hunspell only
supports loading dictionaries from ordinary filesystem paths.

Unpacked extensions are no longer supported on production, except during
development. WebExtensions have no support for the unpacked flag at all, and
specially signed legacy extensions are forbidden from using it, so there's no
point in maintaining support for this install code. Or, more importantly, for
running a nearly complete duplicated set of tests in order to exercise it.

MozReview-Commit-ID: 1fKVgSelJQ8

--HG--
extra : rebase_source : a2e9086a3d050b66eab9c17fff9c2f7189911832
extra : amend_source : da8f6425ec74a824a3d19f13bb4eb51980cd64c1
2018-03-09 12:45:59 -08:00
Noemi Erli 40b1baaab5 Merge inbound to mozilla-central. a=merge 2018-03-10 11:58:34 +02:00
Bogdan Tara eaec7bede8 Backed out 2 changesets (bug 1223726) for failing devtools/client/styleeditor/test/browser_styleeditor_fetch-from-netmonitor.js a=backout on a CLOSED TREE
Backed out changeset a95b0b28ca16 (bug 1223726)
Backed out changeset 6adb35cc708e (bug 1223726)
2018-03-10 02:44:19 +02:00
Kris Maglione b8ee2d988e Bug 1415644: Create a list of restricted domains. r=aswan,mixedpuppy
MozReview-Commit-ID: A0AkaBG33In

--HG--
extra : rebase_source : 9f7cfe657835e0ea3cb591a2e1aa636ed92eb004
2018-03-03 16:28:18 -08:00
Jan Beich 708ab75339 Bug 1444083 - Disable custom styling for <select> and <option> on Tier3 as well. r=jaws
MozReview-Commit-ID: DUlq3hsBRfg

--HG--
extra : rebase_source : e6458d255b6223ba95385530397fee9cd594da20
2018-03-08 14:40:44 +00:00
Jan Odvarko 6d33da940c Bug 1223726 - Customize response body interception; r=ochameau
* Introduce pref for custom response body limit
* Introduce pref for saving request/response bodies

MozReview-Commit-ID: 4DV6QUzCTyP

--HG--
extra : rebase_source : 2b2d76b946214f90c035dcc29092712de199592b
2018-03-09 17:09:42 +01:00
Jan Beich 36a2994346 Bug 1444074 - Enable full-duplex by default for all platforms. r=padenot
MozReview-Commit-ID: LUvReTPd1TA

--HG--
extra : rebase_source : ac0a5e17b54c0e5ff97f84137768e1613a9b88d4
2018-03-08 14:12:28 +00:00
Nicolas B. Pierron 36b48bece7 Bug 1438886 - Prevent speculative execution after returning from GC-capable C++ code. r=jandem 2018-03-09 18:29:10 +00:00
Andreea Pavel 33cc9e0331 Merge mozilla-inbound to mozilla-central. a=merge 2018-03-07 16:43:13 +02:00
Nicholas Nethercote cb93c8b8f0 Bug 440908 - Convert sticky prefs in default pref files to the new syntax. r=glandium
MozReview-Commit-ID: GgkNSsdGhBV

--HG--
extra : rebase_source : efaf5f79ab7b608975ee960057d8be380061fdc0
2018-03-07 09:34:06 +11:00
Bogdan Tara f93e407658 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-03-07 12:06:25 +02:00
Daniel Stenberg 80c6547919 bug 1443489 - TRR: require a pref set to allow early AAAA responses r=valentin
Early AAAA responses might cause issues on hosts without working native
IPv6 connectivity, of course especially notable in TRR-only mode.

MozReview-Commit-ID: 6ZqE6AKnucH

--HG--
extra : rebase_source : ff42cb8daf941a3fa1f7e783c76d823e879024c3
2018-03-06 16:07:29 +01:00
Nicholas Nethercote 038a72de3b Bug 440908 - Add support for `sticky` and `locked` attributes to default prefs. r=glandium
Sticky prefs are already specifiable with `sticky_pref`, but this is a more
general attribute mechanism. The ability to specify a locked pref in the data
file is new.

The patch also adds nsIPrefService.readDefaultPrefsFromFile, to match the
existing nsIPrefService.readUserPrefsFromFile method, and converts a number of
the existing tests to use it.

MozReview-Commit-ID: 9LLMBJVZfg7

--HG--
extra : rebase_source : fa25bad87c4d9fcba6dc13cd2cc04ea6a2354f51
2018-03-02 15:31:40 +11:00
Nicholas Nethercote 74fea66ce5 Bug 440908 - Remove gIsAnyPrefLocked. r=glandium
It optimizes Preferences::IsLocked(), but that function is called fewer than
200 times while starting the browser and opening a range of tabs.

MozReview-Commit-ID: 5q0zS8TSwdu

--HG--
extra : rebase_source : 015c5ebbe28097ef3f02b1062e650df67721f1c3
2018-03-05 15:18:34 +11:00
Jeff Walden ed3e951980 Bug 1443342 - Blacklist nsZipArchive.cpp's entry-name hashing function from being checked for unsigned integer overflows, because it knowingly relies on them. r=froydnj
--HG--
extra : rebase_source : f71e49bcb679b1c3d3a1a8e48f2d6bffd320e876
2018-03-01 17:11:39 -08:00
Masayuki Nakano 8ff64d6a33 Bug 1443117 - Restart to dispatch "keypress" event for non-printable keys and key combinations on Nightly and early-Beta until Google fixes related bugs of their web apps r=smaug
We have stopped dispatching "keypress" events for non-printable keys
and key combinations for conforming to UI Events and following the
other browsers.

However, this change hits a serious bugs of Google Docs, Google
Spreadsheets and Gmail.  Until they will fix their bugs, we should
take back the traditional behavior for keeping Nightly usable for
any Nightly testers.

MozReview-Commit-ID: 9CyEbsFit1S

--HG--
extra : rebase_source : 837288b1fb53121badff4e65094a87cebfe3cfee
2018-03-05 21:12:27 +09:00
Margareta Eliza Balazs bffd3e0225 Merge inbound to mozilla-central. a=merge 2018-03-05 11:41:34 +02:00
Valentin Gosu 34872b6d20 Bug 1441688 - Remove nsIIPCSerializableURI.Deserialize r=mayhemer
MozReview-Commit-ID: 8gwX3vSKWNX

--HG--
extra : rebase_source : a2c21a7e66aa8be3c2e345ca64feea967b380491
2018-03-05 04:14:44 +01:00
Dorel Luca 86acaf1c1a Merge autoland to mozilla-central. a=merge 2018-03-04 12:02:42 +02:00
Valentin Gosu f102a081b2 Bug 1434163 - Make all nsIURI attributes readonly r=mayhemer
MozReview-Commit-ID: KtjO8VWjPF5

--HG--
extra : rebase_source : 061a6db73e36b3a0b3732d44379bbc10e8268f9a
2018-02-27 00:07:48 +01:00
Nicholas Nethercote 0ceb583d52 Bug 1441754 - Use MOZ_ASSERT instead of NS_ASSERTION and NS_PRECONDITION in Preferences.cpp. r=glandium
I also removed the explanation string in cases where I felt it was obvious.

MozReview-Commit-ID: IyHswX3s23y

--HG--
extra : rebase_source : ee0a4729b486e42bd50edf3d5870368e0aaa2310
2018-02-28 18:47:38 +11:00
Nicholas Nethercote 11e94a7ad7 Bug 1441754 - Shrink CallbackNode by combining mMatchKind and mNext into a tagged pointer. r=glandium
The following table shows the effect of this change:

>                           old 64-bit  new 64-bit  old 32-bit  new 32-bit
> sizeof(CallbackNode)      40          32          20          16
> size when heap allocated  48          32          32          16

This reduces memory usage by about 15--40 KB per process.

MozReview-Commit-ID: 4gXgGI3SiJz

--HG--
extra : rebase_source : d62e0b708024b1d8ececd1d5c295159e751e6727
2018-02-28 16:21:42 +11:00
Nicholas Nethercote 97e303236f Bug 1441754 - Privatize CallbackNode's field. r=glandium
This isn't compelling on its own, but it's necessary for the next patch.

MozReview-Commit-ID: CFON8DCdGoA

--HG--
extra : rebase_source : 2b219e2a1330923f63af6dae1d8ab5f2428f926f
2018-02-28 16:10:11 +11:00
Nicholas Nethercote 3d1cfb9da0 Bug 1441754 - Split measurements of pref callbacks in two. r=glandium
This shows that the objects themselves are accounting for about 60% of the
callback memory on 64-bit, and the domains are about 40%.

MozReview-Commit-ID: JndlyIvlrGs

--HG--
extra : rebase_source : 7a60203421c3e03d7cbe36614c72ffe674a4bc71
2018-02-28 16:09:48 +11:00
Nicholas Nethercote 96f04124a0 Bug 1441754 - clang-format some Preferences.cpp code that needs it. r=glandium
MozReview-Commit-ID: E6kxiIs92qB

--HG--
extra : rebase_source : 88c4835b76c17f6b1e0c4e74bd24d479c649fac9
2018-02-28 16:09:24 +11:00
Tom Ritter c095f67f73 Bug 1425462 Turn jitter on by default. r=luke
MozReview-Commit-ID: 9u0rJ8FoteG

--HG--
extra : rebase_source : 5f5256b92bbc7ff7cdade00d32c9aa9d68650347
2018-02-15 15:35:42 -06:00
Tom Ritter 845ef57dd6 Bug 1425462 When reducing the precision of timestamps, also apply fuzzytime to them r=bkelly
Fuzzytime deterministically generates a random midpoint between two clamped values,
and if the unreduced timestamp is above the midpoint, the time is rounded upwards.
This allows safe time jittering to occur, as time will never go backwards on a given
timeline.

It _is_ possible for time to go backwards when comparing different (but related)
timelines, such as a relative timeline in one page (with its own
performance.timeOrigin) and a relative timeline in an iframe or Worker (which
also has its own performance.timeOrigin). This is the same behavior as the 2ms timer
reduction we previously landed; jitter doesn't make this any better or worse.

MozReview-Commit-ID: IdRLxcWDQBZ

--HG--
extra : rebase_source : 40b29d34e5cc99f9b8e6d5e711a03b9fe9bfa595
2018-03-01 00:07:03 -06:00
Catalin Badea d116fe517c Bug 1432846 - Delay update runnables from service workers that don't control any clients. r=bkelly 2018-03-02 11:40:53 +00:00
Dorel Luca cafaae9ee7 Backed out 6 changesets (bug 1425462) for XPCShell failure on multiple files
Backed out changeset 9ace3811f525 (bug 1425462)
Backed out changeset 7d440e52e3a4 (bug 1425462)
Backed out changeset 85896ea96faf (bug 1425462)
Backed out changeset 127b5d2e6779 (bug 1425462)
Backed out changeset 95ce64d3a29a (bug 1425462)
Backed out changeset ddd2c4da4ba4 (bug 1425462)
2018-03-02 03:33:17 +02:00
Tom Ritter 65a1409f60 Bug 1425462 Turn jitter on by default r=luke
MozReview-Commit-ID: 9u0rJ8FoteG

--HG--
extra : rebase_source : e00a72098e22c3d3f5aa559a65a7efc38ae12ee1
2018-02-15 15:35:42 -06:00
Tom Ritter 06ecc9a63d Bug 1425462 When reducing the precision of timestamps, also apply fuzzytime to them r=bkelly
Fuzzytime deterministically generates a random midpoint between two clamped values,
and if the unreduced timestamp is above the midpoint, the time is rounded upwards.
This allows safe time jittering to occur, as time will never go backwards on a given
timeline.

It _is_ possible for time to go backwards when comparing different (but related)
timelines, such as a relative timeline in one page (with its own
performance.timeOrigin) and a relative timeline in an iframe or Worker (which
also has its own performance.timeOrigin). This is the same behavior as the 2ms timer
reduction we previously landed; jitter doesn't make this any better or worse.

MozReview-Commit-ID: IdRLxcWDQBZ

--HG--
extra : rebase_source : e455f934e6e6d65d54c122a6cec9f6cabbd5ac78
2018-03-01 00:07:03 -06:00
Sebastian Hengst 226c2ef8a3 Backed out 3 changesets (bug 1432846) for build bustage on Windows at dom/serviceworkers/ServiceWorkerRegistrationImpl.cpp:301. CLOSED TREE
Backed out changeset 5e3b28d03b34 (bug 1432846)
Backed out changeset a2ae02b5fe72 (bug 1432846)
Backed out changeset a92cc56bbaa4 (bug 1432846)
2018-03-01 21:34:05 +02:00
Sebastian Hengst 118e03a936 merge mozilla-central to mozilla-inbound 2018-03-01 20:32:20 +02:00
Masayuki Nakano 38c9ff1b63 Bug 1440189 - part 1: Stop dispatching keypress event to the default event group in web content (only Nightly and early Beta) r=smaug
UI Events declares that keypress event should be fired only when the keydown
sequence produces some characters.  For conforming to UI Events and
compatibility with the other browsers, we should stop dispatching keypress
events for non-printable keys.

For getting regression reports, we should enable this new behavior only
on Nightly and early Beta.

MozReview-Commit-ID: 5IIL9huejXH

--HG--
extra : rebase_source : 0abdbe84a50d6fd1b4d52521b92e7513483b197c
2018-01-26 00:16:14 +09:00
Catalin Badea 2443202da8 Bug 1432846 - Delay update runnables from service workers that don't control any clients. r=bkelly 2018-03-01 16:34:48 +00:00
Bob Owen 817abcce88 Bug 1423628: Let not processing native events ride the trains on Windows. r=jimm 2018-03-01 14:37:26 +00:00
Andrew Osmond 2088409e88 Bug 523950 - Part 3. Add preferences to control animated image decoding behaviour. r=tnikkel
image.animated.decode-on-demand.threshold-kb is the maximum size in kB
that the aggregate frames of an animation can use before it starts to
discard already displayed frames, and redecode them as necessary. The
lower it is set to, the less overall memory we will consume at the
expense of execution time for as long as the tab with the animation(s)
above the threshold are kept open.

image.animated.decode-on-demand.batch-size is the minimum number of
frames we want to have buffered ahead of an animation's currently
displayed frame. The decoding will request this number of frames at a
time to maximize use of memory caching. Note that this is related to the
above preference as well; increasing the batch size will in effect raise
what the minimum threshold. This simplifies the logic in patches later
in the series.
2018-02-28 13:34:52 -05:00
Florian Quèze c714053d73 Bug 1433175 - scripted patch to replace Components.classes[, Components.interfaces.nsI, Components.utils. and Components.results. with Cc, Ci, Cu and Cr, r=Mossop. 2018-02-28 18:51:33 +01:00
Sebastian Hengst 769222fadf merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : browser/base/content/tabbrowser.xml => browser/base/content/tabbrowser.js
2018-02-28 12:54:12 +02:00
Nathan Froyd c821ec9351 Bug 1441584 - part 1 - declare inner URI Mutator classes final; r=valentin
For documentation purposes and to assist the compiler.
2018-02-27 20:13:57 -05:00
Kearwood "Kip" Gilbert 98f42b8d7f Bug 1438044 - re-enable WebVR for macOS in release r=smaug
For FF59, we disabled WebVR for macOS before allowing it to ride the trains to release.  Softvision was unable to verify for QA due to challenges getting a working hardware configuration for macOS VR at SoftVision.

We have since gained approval from the Firefox Release Team to re-enable WebVR for macOS in release for FF60.

Essentially, we need to reverse the changes in bug 1426500 and uplift to FF59/Beta before the next cycle.

--HG--
extra : rebase_source : 1b0c68b130f869f0e71cf2d93db92bb78dddc79b
2018-02-26 10:04:08 -08:00
Jonathan Kingston 873d5b44df Bug 1440709 - Disabling mixed content upgrading for now. r=ckerschb
MozReview-Commit-ID: AMaEstZlrI1

--HG--
extra : rebase_source : 49333a5d935d6b33ae5b683da3dee99f1edad289
2018-02-27 18:31:55 +00:00
Jonathan Kingston ada03a865d Bug 1359076: Disable all Device Sensor APIs except orientation by default r=bkelly
This patch disables device sensors except orientation by default.
It implements per-sensor prefs to disable orientation, motion, proximity and ambient light
selectively. The patch also makes the pref checks happen at runtime (versus on process
start) using Preferences::AddBoolVarCache.
The patch also removes the related Event constructors also.

MozReview-Commit-ID: EA8ARjjtlkF

--HG--
rename : dom/events/test/test_bug742376.html => dom/events/test/test_deviceSensor.html
rename : dom/events/test/test_eventctors.html => dom/events/test/test_disabled_events.html
rename : dom/events/test/test_eventctors.html => dom/events/test/test_eventctors_sensors.html
extra : rebase_source : 39da98ac9226ac727f5197d28561b0b762da06f4
2017-07-24 10:07:00 +02:00
Chris H-C 061d5897a0 bug 1435753 - Resume collection of extended data from Release Candidate builds on beta, too r=froydnj,gfritzsche
Before Firefox 58 we collected extended collection from users on nightly,
aurora, and beta. Then we had to change things (see bug 1406391).

In doing so, we accidentally stopped receiving data from "release candidate"
beta builds. This patch resumes that collection by detecting an RC build as
having a MOZ_UPDATE_CHANNEL of "release", but an app.update.channel of "beta"

MozReview-Commit-ID: 3EzzDtQj8Kw

--HG--
extra : rebase_source : 371d2b804cad4fff3fc6a954621e651940867435
2018-02-27 14:12:43 -05:00
arthur.iakab bc464b37ba Merge mozilla-central to mozilla-inbound 2018-02-27 12:05:43 +02:00
arthur.iakab 9bffb6aa72 Merge inbound to mozilla-central. a=merge 2018-02-27 11:58:55 +02:00
Valentin Gosu ec9082b60a Bug 1433958 - Change code that sets nsIURI.query to use nsIURIMutator r=mayhemer
MozReview-Commit-ID: JKW8IsaFY10

--HG--
extra : rebase_source : 45ffa07c34739adf4de681fec1370645b0f74985
2018-02-26 20:43:46 +01:00
Valentin Gosu 4c1c2d2005 Bug 1433958 - Change code that sets nsIURI.ref to use nsIURIMutator r=mayhemer
MozReview-Commit-ID: 4caicZFBkcQ

--HG--
extra : rebase_source : fe32f156392a9e0ce69fa6030278eaca43a69482
2018-02-26 20:43:46 +01:00
Valentin Gosu 910fb72867 Bug 1433958 - Change code that calls nsIURI.setQueryWithEncoding to use nsIURIMutator r=mayhemer
MozReview-Commit-ID: crYLGLcsk6

--HG--
extra : rebase_source : db2165ae51a39b852c640d677771109df6d1e579
2018-02-26 20:43:45 +01:00
Valentin Gosu 710c2e2fc9 Bug 1433958 - Change code that sets nsIURI.filePath to use nsIURIMutator r=mayhemer
MozReview-Commit-ID: GYHpakKPEbe

--HG--
extra : rebase_source : 521966b446284fbe215dfc8518acafc5de9ded5c
2018-02-26 20:43:45 +01:00
Jan de Mooij b2a33e80a2 Bug 1437483 part 3 - Enable Ion object type barrier mitigations by default. r=luke 2018-02-27 10:23:25 +01:00
Kit Cambridge fc5a8652b1 Bug 1440467 - Add a pref to always connect to the Push server without existing subscriptions. r=mt
MozReview-Commit-ID: ARXbgfaMJDd

--HG--
extra : rebase_source : e085456af40b6150a9026fa52b25405fe6ee43a1
2018-02-22 19:58:20 -08:00
Honza Bambas 767d4dafd2 Bug 1440663 - Add a preference to limit document opening data conversion recursion depth to nsDocumentOpenInfo, r=smaug
--HG--
extra : histedit_source : 939bf4439875a7d88617d36cbf060e9d728c65fb
2018-02-23 08:00:00 +02:00
Nicholas Nethercote 0b1e4d13e5 Back out 633b2c102c95 (bug 1438732) because it increases memory usage. r=erahm
The increase was 64 KiB per process on 64-bit, and 32 KiB per process on
32-bit. Not worth it for the small improve in code niceness.
2018-02-27 09:38:18 +11:00
Jan de Mooij 190f5a93e1 Bug 1437483 part 1 - Add pref for Spectre mitigations for Ion object type barriers. r=nbp 2018-02-26 15:25:37 +01:00
Csoregi Natalia 166bce1123 Merge inbound to mozilla-central. a=merge 2018-02-24 12:13:21 +02:00
Sebastian Hengst e6ed14057b merge mozilla-central to autoland on a CLOSED TREE
--HG--
extra : amend_source : d88824ea9bbe5e0298f0d64fd0e4cdedcbee342c
2018-02-24 03:07:44 +02:00
Tom Ritter f98bfacba8 Bug 1376865 Automatically decline the canvas permission if it is not in response to user input r=baku
The canvas prompt is extremely annoying. It happens everyone, automatically. And in
99.9% (not scientific) of cases it is not triggered by user input, but my automatic
tracking scripts.

This commit will automatically decline the canvas read if it was not triggered by
user input.

Just in case this breaks something irrepairably, we have a cutoff pref.

We don't intend to keep this pref forever, and have asked anyone who sets it to
tell us why.

MozReview-Commit-ID: CxNkuraRWpV

--HG--
extra : rebase_source : 12cfc94cecbd378c0859ae50066c6338bcaa6692
2018-02-17 13:53:05 -06:00
Eric Rahm cbfd16320a Bug 1438732 - Use nsClassHashtable for prefs hashtable. r=njn
--HG--
extra : rebase_source : a17b9490b6d52d2ed4e510f27a2410f56724f861
2018-02-15 16:43:32 -08:00
Jonathan Kew d7d940f86f Bug 1440658 - Update woff2 library to latest upstream code (currently at 1bccf208bca986e53a647dfe4811322adb06ecf8, release 1.0.2). r=fredw 2018-02-23 14:32:23 +00:00
Jonathan Kew a06e2ce390 Bug 1440656 - Update brotli library to upstream release 1.0.2. r=fredw 2018-02-23 14:32:23 +00:00
Andrew Osmond b18fc05e36 Bug 1427639 - Part 1. Add preferences to control image frame allocations in volatile memory or the heap. r=tnikkel
image.mem.volatile.min_threshold_kb is the minimum buffer allocation for
an image frame in KB before it will use volatile memory. If it is less
than it will use the heap. This only is set to > 0 on Android.

image.mem.animated.use_heap forces image frames to use the heap if it is
for an animated image. This is only enabled for Android, and was
previously a compile time option also for Android.
2018-02-22 14:26:29 -05:00
Jonathan Kew 10215d3497 Bug 1440411 - Remove the obsolete gfx.font_loader.families_per_slice pref (no longer used by any code). r=jrmuizel 2018-02-22 20:55:39 +00:00
Makoto Kato 601cf3a789 Bug 1431570 - Use Malgun Gothic as default font of Korean on release channel. r=jfkthame
--HG--
extra : rebase_source : 89c6aabd133798cb2b167e3e26f9a364a6cf1d93
2018-02-22 18:37:43 +09:00
Matt Woodrow 172126b4a6 Bug 1440144 - Let retained dl ride the trains. r=miko 2018-02-22 13:10:21 +13:00
Csoregi Natalia 957058e69e Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-21 23:53:19 +02:00
Jason Orendorff a48654929c Bug 1439665 - Part 1: #include some headers directly in files that use them. r=sfink.
"Include what you use."

--HG--
extra : rebase_source : 2239a380029e0efbc9dd3042459222a67c38d70f
extra : amend_source : 4453c32cc469caa592049167205666997f1a1e7b
extra : histedit_source : a533edd4a4d3d0642b08989e93674661d27baa6a%2C37d27eeef9580381ccc0de8507f60166dabf1730
2018-02-20 11:28:12 -06:00
Jonathan Kingston 8afc412494 Bug 1435733 - Upgrade mixed display content pref. r=baku,ckerschb,francois,mayhemer
MozReview-Commit-ID: ETIgVF3zhRu

--HG--
extra : rebase_source : e4c59f50584158f4b31527347b10424b56692fa1
2018-02-05 15:37:27 +00:00
Gurzau Raul 082f8e6d89 Merge inbound to mozilla-central. a=merge 2018-02-21 12:01:33 +02:00
Valentin Gosu 55a7a824c6 Bug 1435671 - Reduce binary size by making NS_MutateURI.Apply not be a templated method r=mayhemer
We instead add a templated method NS_MutatorMethod that returns a std::function<nsresult(nsIURIMutator*)> which Apply then calls with mMutator as an argument.
The function returned by NS_MutatorMethod performs a QueryInterface, then calls the passed method with arguments on the result.

MozReview-Commit-ID: Jjqp7gGLG1D

--HG--
extra : rebase_source : f2a17aee7bb66a7ba8652817d43b9aa7ec7ef710
2018-02-21 01:00:54 +01:00
nbeleuzu@mozilla.com 01eef6aff1 Backed out changeset c9dcce0a1068 (bug 1435671) for build bustages on nsIURIMutator.h. CLOSED TREE 2018-02-21 00:06:46 +02:00
Valentin Gosu f1850e9354 Bug 1435671 - Reduce binary size by making NS_MutateURI.Apply not be a templated method r=mayhemer
We instead add a templated method NS_MutatorMethod that returns a std::function<nsresult(nsIURIMutator*)> which Apply then calls with mMutator as an argument.
The function returned by NS_MutatorMethod performs a QueryInterface, then calls the passed method with arguments on the result.

MozReview-Commit-ID: Jjqp7gGLG1D

--HG--
extra : rebase_source : 592d13349a8c4627c7ce3146ec592f577b39f3cc
2018-02-20 22:39:40 +01:00
Nicholas Nethercote 135442b9ce Bug 107264 - Add error recovery to the prefs parser. r=glandium
This was first suggested 17 years ago!

The error recovery works by just scanning forward for the next ';' token.

This change allows a lot of the gtest tests to be combined.

MozReview-Commit-ID: CbZ2OFtdIxf

--HG--
extra : rebase_source : 5a43fff06e88b45a095725856bbe1e6b5470c9a0
2018-02-21 08:29:23 +11:00
Nicholas Nethercote 3352757fbc Bug 107264 - Make prefs parser errors louder. r=glandium
MozReview-Commit-ID: Ah36kygP3ix

--HG--
extra : rebase_source : 64c60ac60de01c6d9b405f93d7292f69ee650571
2018-02-19 16:32:34 +11:00
Andreas Pehrson e52987eee4 Bug 1436352 - Enable turning microphone off on track-disable by default. r=jib
MozReview-Commit-ID: LwIPkOD46p3

--HG--
extra : rebase_source : ddf21aec7f95c4071cc1955f446353e3b0361c36
2018-02-19 16:13:43 +01:00
Xidorn Quan b378bc1325 Bug 1417138 part 2 - Enable stylo-chrome by default. r=bholley
MozReview-Commit-ID: D19QBD4nqWf

--HG--
extra : rebase_source : 614ee44f14447ad6719b5c1c55073a736da88533
extra : source : 8e0394db471fdc75cdee12013944ed9a2873cd62
2018-02-13 16:30:43 +11:00
Tooru Fujisawa dc9e1f8ab9 Bug 1438599 - Part 2: Import fdlibm from FreeBSD (revision b21ccf63f28a3a4692d8a31419e0a725a1b1a800). r=jwalden 2018-02-18 22:56:46 +09:00
Tooru Fujisawa cacb9bf19b Bug 1438599 - Part 1: Rebase local patches for fdlibm. r=jwalden 2018-02-18 22:56:38 +09:00
Tooru Fujisawa 777d46a71e Bug 1438599 - Part 0: Echo the applying patch in fdlibm update script. r=jwalden 2018-02-18 22:56:29 +09:00
Andreea Pavel 2e506ce663 Merge mozilla-inbound to mozilla-central. a=merge 2018-02-17 23:44:10 +02:00
Dorel Luca e3b96b7694 Merge mozilla-central to mozilla-inbound 2018-02-17 12:01:23 +02:00
Jonathan Kew f33b65d235 Bug 1438522 - Cherry-pick recent FreeType fixes for variation fonts and flex rendering. r=jrmuizel 2018-02-17 09:04:16 +00:00
Gurzau Raul c276a6b86e Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-02-17 00:11:50 +02:00
Andrew Osmond 4318a7dc60 Bug 1436247 - Part 2. Shutdown idle image decoder threads after the configured timeout. r=tnikkel
The image decoding thread pool can grow to be quite large, up to 32
threads, depending on the number of processors on the system. If the
user is not actively browsing, these threads are occupying resources
which could be reused elsewhere. After the timeout period, it will
release up to half of the threads in the pool.
2018-02-13 06:43:31 -05:00
Narcis Beleuzu 2d9816273c Merge inbound to mozilla-central. a=merge 2018-02-16 11:49:59 +02:00
Noemi Erli 060d1f8fed Backed out 2 changesets (bug 1417138) for failing in slave/test/build/tests/reftest/tests/layout/reftests/xul/menulist-shrinkwrap-2.xul on a CLOSED TREE
Backed out changeset 4e0d4c91940b (bug 1417138)
Backed out changeset 92fa88d94170 (bug 1417138)
2018-02-16 04:48:23 +02:00
Nicholas Nethercote 046941efbf Bug 1436863 - Only send possibly-changed prefs to content processes. r=glandium.
The meaning of "possibly-changed" is provided by the big comment above
MustSendToContentProcesses.

On a new profile this reduces the number of prefs sent like so:
- Command-line: 222 --> 3
- IPC:         3129 --> 130

On an older profile:
- Command-line: 222 --> 3
- IPC:         3165 --> 180

MozReview-Commit-ID: DcgedhXhZd8

--HG--
extra : rebase_source : acef424fab5031347cbcbd5c3e6a24ee66895ef9
2018-02-09 16:31:13 +11:00
Jeff Walden 29bf925937 Bug 1437729 - Make fdlibm::atan2(y, x)'s handling for |x == 1.0| not potentially invoke signed integer overflow. r=arai
--HG--
rename : modules/fdlibm/patches/15_use_safer_strict_assign_on_visual_studio.patch => modules/fdlibm/patches/16_use_safer_strict_assign_on_visual_studio.patch
extra : rebase_source : c4d0988163c9f854d28e67c1c1568f7c1f99929a
2018-02-13 09:00:53 -08:00
Jonathan Kingston 9f340d8168 Bug 1429732 - Use a pref to disable registerProtocolHandler in insecure contexts. r=baku,dao
MozReview-Commit-ID: 9NxFv57CyZO

--HG--
extra : rebase_source : 897ca40537493cc9df4bef7a538a5fdb04769889
2018-02-04 12:10:10 +00:00
Margareta Eliza Balazs 55aa0e75d6 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-15 22:43:18 +02:00
Andreea Pavel 2a7b1dfa56 Merge mozilla-central to autoland. on a CLOSED TREE 2018-02-15 12:34:12 +02:00
Andreea Pavel 74b7ffee40 Merge mozilla-inbound to mozilla-central a=merge
--HG--
rename : js/src/jscompartment.cpp => js/src/vm/JSCompartment.cpp
rename : js/src/jscompartment.h => js/src/vm/JSCompartment.h
rename : js/src/jsscript.cpp => js/src/vm/JSScript.cpp
rename : js/src/jsscript.h => js/src/vm/JSScript.h
extra : amend_source : 9c233cb959c45e401189d089a094f9d141d2b912
2018-02-15 12:24:21 +02:00
Masayuki Nakano 9893d30a7f Bug 1430551 - Make editor use <div> as defaultParagraphSeparator even in release channel r=m_kato
No Nightly testers don't report new compatibility issue.  Additionally, if we
make Firefox use <div> as defaultParagraphSeparator in release build, web
services may stop supporting our current behavior quickly because they can
get rid of hack for us.  Therefore, we should do this in the cycle of Gecko 60
which is next ESR.  If we did this later, ESR users may have become not to be
able to use existing web services suddenly immediately after we did this in 61
or 62.  We should avoid this bad scenario.

MozReview-Commit-ID: 7Um79Ky7n8i

--HG--
extra : rebase_source : 45c6d521ddc1166decb60cc8437ffb703b1e9aff
2018-02-12 00:31:44 +09:00
Nicholas Nethercote b91c61842a Bug 1438088 - Store a Pref* in each hash table slot instead of a Pref. r=erahm.
This has two advantages. First, it reduces memory usage, as per the following
calculation.

64-bit:
- Old sizes:
  - sizeof(Pref) = 32
- New sizes:
  - sizeof(PrefEntry) = 16
  - sizeof(Pref) = 32
- Change:
  - -16 per empty slot in the hash table
  - +16 per used slot
  - A win if less than half the table slots are used

32-bit
- Old sizes:
  - sizeof(Pref) = 20
- New sizes:
  - sizeof(PrefEntry) = 8
  - sizeof(Pref) = 16
- Change:
  - -12 per empty slot in the hash table
  - +4 per used slot in the hash table
  - A win if table is < 75% full

Table size:
- The table is currently less than half full: ~3100 used out of 8192 slots.
- The table is always <= 75% full, because that's the max load factor (for
  non-gigantic tables).
- Therefore it's a win for both cases.

Old sizes, chrome process, 64-bit:

> 718,712 B (00.36%) -- preferences
> +--262,176 B (00.13%) -- hash-table
> +--197,384 B (00.10%) -- callbacks
> +--114,688 B (00.06%) -- pref-name-arena
> +---92,240 B (00.05%) -- root-branches
> +---30,456 B (00.02%) -- string-values
> +---21,688 B (00.01%) -- cache-data
> +-------80 B (00.00%) -- misc

New sizes, chrome process, 64-bit:

> 672,568 B (00.41%) -- preferences
> +--181,160 B (00.11%) -- callbacks
> +--131,104 B (00.08%) -- hash-table      # smaller
> +--114,688 B (00.07%) -- pref-name-arena
> +--101,152 B (00.06%) -- pref-values     # new
> +---92,240 B (00.06%) -- root-branches
> +---30,456 B (00.02%) -- string-values
> +---21,688 B (00.01%) -- cache-data
> +-------80 B (00.00%) -- misc

Old sizes, smallest content process, 64-bit:

> 500,712 B (02.89%) -- preferences
> +--262,176 B (01.51%) -- hash-table
> +--114,688 B (00.66%) -- pref-name-arena
> +---62,520 B (00.36%) -- callbacks
> +---30,456 B (00.18%) -- string-values
> +---17,832 B (00.10%) -- cache-data
> +---12,960 B (00.07%) -- root-branches
> +-------80 B (00.00%) -- misc

New sizes, smallest content process, 64-bit:

> 470,792 B (02.70%) -- preferences
> +--131,104 B (00.75%) -- hash-table       # smaller
> +--114,688 B (00.66%) -- pref-name-arena
> +--101,152 B (00.58%) -- pref-values      # new
> +---62,520 B (00.36%) -- callbacks
> +---30,456 B (00.17%) -- string-values
> +---17,832 B (00.10%) -- cache-data
> +---12,960 B (00.07%) -- root-branches
> +-------80 B (00.00%) -- misc

The "hash-table" values drop by more than the size of the new "pref-values"
value.

On 64-bit, this reduces memory usage per process by 30--40 KB. On 32-bit, the
number is slightly more.

The second major advantage of this change is flexibility -- it opens up the
possibility of different Pref objects being stored in different way. For
example, static Prefs could be stared statically, letting them be shared
between processes so long as they don't change (see bug 1437168).

MozReview-Commit-ID: KmgbJaoOQ1J

--HG--
extra : rebase_source : 9f8201583432c1414ab3e17e80fe23a369ac264b
2018-02-02 16:30:13 +11:00
Marco Bonardo b24d9c6370 Bug 1438130 - Disable preloaded top websites suggestions in the Address Bar until ready. r=Gijs
This feature is confusing for Nightly users in its current state, and the
suggested websites, in foreign languages, may look worrisome to some.
Bug 1340663 must figure out these issues before re-enabling the feature.

MozReview-Commit-ID: 6RJ0Ff1B3AJ

--HG--
extra : rebase_source : 569b5ae833c4f5c05656522d0d9d0ad00679c370
2018-02-16 17:12:13 +01:00
Csoregi Natalia ddab1c3b47 Backed out 2 changesets (bug 1417138) for failing test_message_manager_ipc.html on Android. CLOSED TREE
Backed out changeset 0264b78fe72b (bug 1417138)
Backed out changeset c559b013b025 (bug 1417138)
2018-02-16 20:37:36 +02:00
Jon Coppeard 11e04720be Bug 1438139 - Enable <script type="module"> by default r=smaug 2018-02-15 15:35:20 +00:00
Dorel Luca dabf7b41ee Merge mozilla-central to autoland. CLOSED TREE
--HG--
extra : amend_source : 021950f3661e3b1d96e768155c5754b7af039f84
2018-02-15 00:35:45 +02:00
Margareta Eliza Balazs 2fd871d8b3 Backed out 4 changesets (bug 1436247) for c2 failures in dom/events/test/test_DataTransferItemList.html on a CLOSED TREE
Backed out changeset 858d629f761d (bug 1436247)
Backed out changeset 4ce2bfe462a0 (bug 1436247)
Backed out changeset 3650631487c7 (bug 1436247)
Backed out changeset c32ead4e3525 (bug 1436247)
2018-02-13 19:56:26 +02:00
Nathan Froyd e3a6281dd3 Bug 1437606 - part 2 - use NS_IMPL_ISUPPORTS in modules/libpref/; r=njn
Now that we've used the standard NS_IMPL_QUERY_INTERFACE macro, we can
start using the even more standard NS_IMPL_ISUPPORTS macro.
2018-02-13 09:57:33 -05:00
Nathan Froyd 9285fd3fe9 Bug 1437606 - part 1 - use NS_IMPL_QUERY_INTERFACE in modules/libpref/; r=njn
This construct is nicer than NS_INTERFACE_MAP_BEGIN and assures the
reader there's no weirdness in the QI implementation.  This change does
mean that PGO doesn't get an opportunity to measure the frequency of
which interfaces are QI'd most often.  I think this is probably an OK
tradeoff to make, given the prevalence of NS_IMPL_QUERY_INTERFACE
elsewhere in the codebase.

The one thing we have to ensure with this change is that the ambiguous
QI to nsISupports uses the proper class after the change.  The
NS_IMPL_QUERY_INTERFACE macro chooses the first interface listed to
disambiguate the cast to nsISupports.
2018-02-13 09:57:33 -05:00
Andrew Osmond 94c773742a Bug 1436247 - Part 2. Shutdown idle image decoder threads after the configured timeout. r=tnikkel
The image decoding thread pool can grow to be quite large, up to 32
threads, depending on the number of processors on the system. If the
user is not actively browsing, these threads are occupying resources
which could be reused elsewhere. After the timeout period, it will
release up to half of the threads in the pool.
2018-02-13 06:43:31 -05:00
Ciure Andrei 72080bd73c Merge inbound to mozilla-central. a=merge 2018-02-13 00:08:37 +02:00
Tom Ritter 1c60c301ab Bug 1435296 Bump the default timer precision resolution to 2ms r=baku
MozReview-Commit-ID: G33jNNJVRSU

--HG--
extra : rebase_source : b34e8cb65407c2379e1714aab22b2c8c60d98b57
2018-02-02 11:05:40 -06:00
Ryan Hunt b796b12ab7 Add 'layers.omtp.dump-capture' for logging DrawTargetCapture (bug 1435938, r=bas)
MozReview-Commit-ID: GCyHRg8Dn6c

--HG--
extra : histedit_source : 297fbbc9defda0accc894fabdc30256a8484b4c4
2018-02-05 22:03:49 -06:00
Nicholas Nethercote 8f5a9b5df1 Bug 1436643 - Use a PLDHashTable `initEntry` function for Pref. r=froydnj
This lets us have a proper constructor for Pref, which is nice.

The patch also adds a missing case to PrefTypeToString(), and reorders the
fields in Pref to be more sensible.

MozReview-Commit-ID: A01ULF4q08O

--HG--
extra : rebase_source : 835e494ad18e3ea4de9f02beca8266551bfffe5e
2018-02-09 13:34:03 +11:00
Jonathan Kew e9f040dc25 Bug 1435684 - Enable the paint-order property for HTML text. r=dbaron 2018-02-11 12:36:05 +00:00
Nicolas B. Pierron 2015caa45a Bug 1433111 - Add JS Shell and about:config switch for Value masking. r=jandem 2018-02-09 16:49:32 +00:00
Csoregi Natalia bcaa305dbd Backed out 2 changesets (bug 1435938) for rusttest failures on linux. CLOSED TREE
Backed out changeset b24907f82186 (bug 1435938)
Backed out changeset db4018b4b695 (bug 1435938)
2018-02-09 18:21:54 +02:00
Jan de Mooij 52f3d5b9f2 Bug 1434230 part 4 - Enable Spectre string mitigations by default. r=luke 2018-02-09 16:47:37 +01:00
Ryan Hunt 21ab059373 Add 'layers.omtp.dump-capture' for logging DrawTargetCapture (bug 1435938, r=bas)
MozReview-Commit-ID: GCyHRg8Dn6c

--HG--
extra : rebase_source : f827c36f3bf5a55b20a42f21dcab8d1935e956e5
extra : histedit_source : 988a537ce5904887b9e811849120ab2e14709832
2018-02-05 22:03:49 -06:00
Masatoshi Kimura eb51cbc6c9 Bug 1428568 - Stop using GetNativePath in libjar. r=mayhemer
mZips key is used only for internal hashtable lookups, so GetPersistentDescriptor is suitable.

MozReview-Commit-ID: 48wDOSjyo3r

--HG--
extra : rebase_source : 03c4b47812dade1d3e321727aafacfbc12bcbf32
extra : intermediate-source : 85a0b6bc25a1f960767ac28ff23a8c26829946a2
extra : source : 544bf26e258d42c835c80672416b0e29a48ba33b
2017-12-15 20:58:51 +09:00
Jan de Mooij 482d8c9a7b Bug 1434230 part 1 - Some Spectre mitigations for loadStringChars. r=luke,nbp
--HG--
extra : rebase_source : 463ec4c2195df912071064f97dbb07243a08ad75
2018-02-08 22:01:52 +01:00
Narcis Beleuzu f2b1b8c261 Backed out 3 changesets (bug 1434230) for assertion failures on MacroAssembler.cpp
Backed out changeset 7f67769bbbd8 (bug 1434230)
Backed out changeset 6598194588d7 (bug 1434230)
Backed out changeset 9c9ba4938b08 (bug 1434230)
2018-02-08 23:55:40 +02:00
Jan de Mooij b55aa41d52 Bug 1434230 part 1 - Some Spectre mitigations for loadStringChars. r=luke,nbp 2018-02-08 22:01:52 +01:00
Tom Schuster 7fd063c021 Bug 1420101 - Add default enabled pref for Array.prototype.values. r=jandem,bz
--HG--
extra : rebase_source : a8e3eb91d08c22e63a4ff4ac499067b8a64996f1
2018-02-02 18:46:21 +01:00
Nicholas Nethercote b001a7cd81 Bug 1435942 - Fix buggy getters in Preferences.h. r=glandium
They currently fail to pass on `aKind`, always getting the user value (when
possible). There are three callsites that are affected:

- nsSHistory::Startup, docshell/shistory/nsSHistory.cpp.
- FeatureState::SetDefaultFromPref(), in gfx/config/gfxFeature.cpp.
- gfxPlatform::InitOMTPConfig(), in gfx/thebes/gfxPlatform.cpp.

The patch also adds a gtest that would have failed prior to the fix.

MozReview-Commit-ID: L0U1XQmPUFc

--HG--
extra : rebase_source : d51d09836609c5a45d0b9f20570427681d8b3309
2018-02-07 09:11:11 +11:00
Jan de Mooij 7283c849b7 Bug 1435266 - Enable Spectre index masking by default. r=luke 2018-02-07 17:56:34 +01:00
Masayuki Nakano d6f1c6f7dd Bug 1435730 - part 1: Make TSFTextStore::GetTextExt() not return TS_E_NOLAYOUT error to Japanist 10 when the range is in composition string r=m_kato
Similar to ATOK, Japanist 10 requests all or part of composition string.
If we return TS_E_NOLAYOUT in this case, you'll see candidate window at
top-left of the screen.

For avoiding this issue, we should not return TS_E_NOLAYOUT to Japanist 10
when the query range is in composition string.

MozReview-Commit-ID: 2OPafUO5PQC

--HG--
extra : rebase_source : bd7a594d8d3540374d61860651b69528aa6e3793
2018-02-06 14:45:22 +09:00
Nicholas Nethercote 55036b82ae Bug 1435943 - Tweak Preferences::GetType() and nsPrefBranch::GetPrefType(). r=glandium
This patch rearranges these functions so that nsPrefBranch::GetPrefType() calls
into Preferences::GetType(), because all other nsPrefBranch methods depend on
Preferences methods.

The patch also removes the `aKind` argument from GetType(), because it has no
effect -- a pref only has one type, regardless of whether it has a default
value, a user value, or both.

MozReview-Commit-ID: J3vxFPaP8S3
2018-02-06 17:08:07 +11:00
Gurzau Raul 772c8edfef Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-07 02:29:42 +02:00
Andrew McCreight 5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Narcis Beleuzu 458abc4de4 Backed out changeset 905555709846 (bug 1435296) for mochitest GPU failures on /browser_profiling-webgl.js. CLOSED TREE 2018-02-06 16:29:18 +02:00
Tom Ritter 3c316eb5b3 Bug 1435296 Bump the default timer precision resolution to 2ms r=baku
MozReview-Commit-ID: G33jNNJVRSU

--HG--
extra : rebase_source : 4b7dace8b5ccb3c28d337350435f4a7bd45f061b
2018-02-02 11:05:40 -06:00
Alexis Beingessner 8acb1d6f40 Bug 1362115 - turn on blob-images by default with webrender. r=kats
MozReview-Commit-ID: GH4Ukj01rJ5

--HG--
extra : rebase_source : 96b48cc87d31ee75b069d08f72fec259d87b957f
2018-02-01 14:00:26 -05:00
Narcis Beleuzu 84cea84b12 Merge inbound to mozilla-central. a=merge 2018-02-06 11:54:42 +02:00
Valentin Gosu 3c233e8b30 Bug 1432519 - Make nsIURL attributes readonly r=mayhemer
MozReview-Commit-ID: KuPILT7rX6N

--HG--
extra : rebase_source : 75b84d74d74539ed3b178480cfa0aa37cfc9d947
2018-01-31 03:06:58 +01:00
arthur.iakab a090750861 Merge mozilla-central to autoland
--HG--
extra : rebase_source : a5345fa7da5587fdc8dc5e1fd160bbaa03ef6214
2018-02-02 12:11:39 +02:00
Nicholas Nethercote c91fdaccff Bug 823023 - Tweak the comment at the top of prefs.js. r=glandium
Specifically:
- Make the warning about editing in all-caps;
- Make it clear that about:config is a browser thing;
- Add a mention of the user.js file;
- Use C++ comments, because I prefer them to C comments and I am the module
  owner :)

MozReview-Commit-ID: 9GXS5nNHywO
2018-02-02 12:36:20 +11:00
Nicholas Nethercote 00fa66ab0c Bug 1435144 - Fix the last part of the prefs parser gtest. r=glandium
MozReview-Commit-ID: KPG5SX2vwce
2018-02-02 14:48:13 +11:00
Andrew McCreight 589eaa7bb4 Bug 1434952 - Remove signed.applets.codebase_principal_support pref. r=mrbkap
MozReview-Commit-ID: K8nic9kw8gF

--HG--
extra : rebase_source : 2f99d4594c88a4e6f38cbe740af8e10a5a528a81
2018-02-01 12:44:59 -08:00
Dorel Luca 8600436f5d Backed out 2 changesets (bug 1362115) for frequent crashtest failures in gfx/tests/crashtests/1317403-1.html
Backed out changeset 761a65991c7f (bug 1362115)
Backed out changeset 71eb4d997c0d (bug 1362115)
2018-02-02 11:15:27 +02:00
Valentin Gosu bbd69887b2 Bug 1432613 - Make nsIJAREntry.JAREntry readonly r=mayhemer
MozReview-Commit-ID: 3yPZIn2NkH

--HG--
extra : rebase_source : 357520401bb0797e7e01b6a6b6e250062b7619b5
2018-01-23 22:04:33 +01:00
Alexis Beingessner 5070b17ee7 Bug 1362115 - turn on blob-images by default with webrender. r=kats
MozReview-Commit-ID: GH4Ukj01rJ5

--HG--
extra : rebase_source : 7022cb76018ae06147e257ed3854352627687031
2018-02-01 14:00:26 -05:00
Jonathan Kingston 53c9c480b7 Bug 1354175 - Disable AppCache in insecure contexts. r=baku,bkelly,mayhemer
MozReview-Commit-ID: wYWHkGlV8h

--HG--
extra : rebase_source : 9a600559a9d61c42baf9e3e5fde6e35d5adeaf90
2018-01-12 19:09:30 +00:00
Florian Quèze 2b1c8dccb6 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
Andrea Marchesini 0c7e47f8eb Bug 1434934 - Remove dom.workers.enabled pref, r=bkelly 2018-02-01 18:34:08 +01:00
Jonathan Kew 8a9e00e955 Bug 1434697 - patch 1 - Cherry-pick commit 994eb2b34934bc5face9f83b2d3b12cf7a9262ab (fix for FreeType bug https://savannah.nongnu.org/bugs/index.php?52955) from upstream to our in-tree copy, pending a new FreeType release. r=lsalzman 2018-01-31 18:06:18 +00:00
Ryan Hunt 43118373ed Enable parallel painting on OSX and cap the amount of paint workers to 4. (bug 1430793, r=milan)
--HG--
extra : rebase_source : 9d5c853f84b160819540cc062fb84f4bea8fcb02
2018-01-25 14:12:39 -06:00
Gurzau Raul 3a5264e71b Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-07 00:00:20 +02:00
Nicholas Nethercote 44fe31326e Bug 1435927 - Remove NS_PREFSERVICE_RESET_TOPIC_ID. r=glandium
It's unused.

MozReview-Commit-ID: Hhx4MhIVyzQ

--HG--
extra : rebase_source : 8d535d85c9e0d68805150f4e80f7083f6c287f0a
2018-02-06 13:57:35 +11:00
Nicholas Nethercote f2cc57de76 Bug 1435927 - Remove dead declarations from nsIPrefService.idl. r=glandium
MozReview-Commit-ID: ozUI8tVOVn

--HG--
extra : rebase_source : b8aec435ca9ed6d1432a2ebe91313acb79bf71e5
2018-02-06 13:56:27 +11:00
Nicholas Nethercote 8adb5c96cf Bug 1435927 - Add some more assertions to Preferences.cpp. r=glandium
MozReview-Commit-ID: 12sTvb4JJuS

--HG--
extra : rebase_source : 057c464aa56e215ebdab49e3b0666c7f442f4c73
2018-02-02 16:50:56 +11:00
Eugen Sawin 9abc14182a Bug 1423229 - [4.0] Add support for category-based tracking lists. r=francois 2018-02-05 22:10:34 +01:00
Andreea Pavel 5cb4690609 Backed out 6 changesets (bug 1423229) for failing browser chrome at browser/base/content/test/siteIdentity/browser_bug1045809.js and firefox functional at testing/firefox-ui/tests/functional/security/test_mixed_script_content_blocking.py TestMixedScriptContentBlocking.test_mixed_content_page and mochitest devtools at devtools/client/webconsole/test/browser_webconsole_block_mixedcontent_securityerrors.js on a CLOSED TREE
Backed out changeset 2ee49f44e617 (bug 1423229)
Backed out changeset 30d1575f5b16 (bug 1423229)
Backed out changeset 39d76cb8c73e (bug 1423229)
Backed out changeset 8ff1f049ac96 (bug 1423229)
Backed out changeset c86887b7f327 (bug 1423229)
Backed out changeset 5417194f3778 (bug 1423229)
2018-02-03 01:12:45 +02:00
Eugen Sawin 85ea608938 Bug 1423229 - [4.0] Add support for category-based tracking lists. r=francois 2018-02-02 22:36:33 +01:00
Narcis Beleuzu eeb7190f9a Merge inbound to mozilla-central. a=merge 2018-02-01 12:05:39 +02:00
Nicholas Nethercote a9860dbcb8 Bug 1423840 - Temporarily disable a small part of the prefs parser gtest due to failures on Windows. r=me 2018-02-01 19:14:30 +11:00
Nicholas Nethercote eeb14c6c69 Bug 1423840 (attempt 2) - Rewrite the prefs parser. r=glandium,Manishearth
The prefs parser has two significant problems.

- It doesn't separate tokenizing from parsing.

- It is implemented as a loop around a big switch on a "current state"
  variable.

As a result, it is hard to understand and modify, slower than it could be, and
in obscure cases (involving comments and whitespace) it fails to parse what
should be valid input.

This patch replaces it with a recursive descent parser (albeit one without any
recursion!) that has separate tokenization. The new parser is easier to
understand and modify, more correct, and has better error messages. It doesn't
do error recovery, but that would be much easier to add than in the old parser.

The new parser also runs about 1.9x faster than the existing parser. (As
measured by parsing greprefs.js's contents from memory 1000 times in
succession, omitting the prefs hash table construction. If the table
construction is included, it's about 1.6x faster.)

The new parser is slightly stricter than the old parser in a few ways.

- Disconcertingly, the old parser allowed arbitrary junk between prefs
  (including at the start and end of the prefs file) so long as that junk
  didn't include any of the following chars: '/', '#', 'u', 's', 'p'. I.e.
  lines like these:

    !foo@bar&pref("prefname", true);
    ticky_pref("prefname", true);       // missing 's' at start
    User_pref("prefname", true);        // should be 'u' at start

  would all be treated the same as this:

    pref("prefname", true);

  The new parser disallows such junk because it isn't necessary and seems like
  an unintentional botch by the old parser.

- The old parser allowed character 0x1a (SUB) between tokens and treated it
  like '\n'.

  The new parser does not allow this character. SUB was used to indicate
  end-of-file (*not* end-of-line) in some old operating systems such as MS-DOS,
  but this doesn't seem necessary today.

- The old parser tolerated (with a warning) invalid escape sequences within
  string literals -- such as "\q" (not a valid escape) and "\x1" and "\u12"
  (both of which have insufficient hex digits) -- accepting them literally.

  The new parser does not tolerate invalid escape sequences because it doesn't
  seem necessary and would complicate things.

- The old parser tolerated character 0x00 (NUL) within string literals; this is
  dangerous because C++ code that manipulates string values with embedded NULs
  will almost certainly consider those chars as end-of-string markers.

  The new parser treats NUL chars as end-of-file, to avoid this danger and
  because it facilitates a significant optimization (described within the
  code).

- The old parser allowed integer literals to overflow, silently wrapping them.

  The new parser treats integer overflow as a parse error. This seems better,
  and it caught existing overflows of places.database.lastMaintenance, in
  testing/profiles/prefs_general.js (bug 1424030) and
  testing/talos/talos/config.py (bug 1434813).

The first of these changes meant that a couple of existing prefs with ";;" at
the end had to be changed (done in the preceding patch).

The minor increase in strictness shouldn't be a problem for default pref files
such as greprefs.js within the application (which we can modify), nor for
app-written prefs files such as prefs.js. It could affect user-written prefs
files such as user.js; the experience above suggests that integer overflow and
";;" are the most likely problems in practice. In my opinion, the risk here is
acceptable.

The new parser also does a better job of tracking line numbers because it (a)
treats "\r\n" sequences as a single end-of-line marker, and (a) pays attention
to end-of-line sequences within string literals.

Finally, the patch adds thorough tests of both valid and invalid syntax.

MozReview-Commit-ID: JD3beOQl4AJ
2018-02-01 16:21:47 +11:00
Nicholas Nethercote 88664febda Bug 1423840 (attempt 2) - Remove extraneous semicolons in all.js. r=glandium
MozReview-Commit-ID: 2BMfVOoEtQ2
2018-02-01 15:44:29 +11:00
Adrian Wielgosik 639df9d521 Bug 1353329 - Remove remains of SecureElement API. r=bz
MozReview-Commit-ID: 5D1VriUJ8UP

--HG--
extra : rebase_source : 894a6e151142726e9cc9f6d417bec36831aa1129
2018-01-31 22:07:30 +01:00
Cameron McCormack 24cbcff6fa Bug 1430014 - Part 1: Add --enable-stylo=only configure option and MOZ_OLD_STYLE define. r=glandium,xidorn
MozReview-Commit-ID: FsypJFV1sxS

--HG--
extra : source : 3043d52e91a1768dddf603a8a6fd992a8fc89ebf
2018-02-01 15:04:04 +11:00
Cosmin Sabou 9efa17a39e Backed out 2 changesets (bug 1423840) for mass Talos failures due to forbidden connections. CLOSED TREE
Backed out changeset e8b798a5205a (bug 1423840)
Backed out changeset e500592d3551 (bug 1423840)
2018-02-01 03:05:08 +02:00