This patch also fixes a bug in our UpdateDropDown code where we weren't computing updated styles for <select> element, as well as another bug where we weren't passing the correct number of arguments to this.populate.
MozReview-Commit-ID: 8LAeIliRXhZ
--HG--
extra : rebase_source : 19c573ffebf700de4b4a470ceb1d2706a8088574
This patch enables flake8 rule E128:
"continuation line under-indented for visual indent" in toolkit/components/telemetry
by removing the relative E128 entry from toolkit/components/telemetry/.flake8
and fixing the files for which the E128 error was reported.
Precisely 10 errors violating E128 rule were found and solved.
MozReview-Commit-ID: 4sNXIxGFJQN
--HG--
extra : rebase_source : bc2ef3bf1cc4bbe5b0450458226af07a83c30f30
This patch forks the breakpad files used for GUID generation and replaces them
with copies living together with the rest of the forked sources. Since other
files in the breakpad sources rely on the original files being present they
haven't been removed but we deliberately define their inclusion definitions in
the build system to prevent them from contributing to the build. This ensures
that we always use our own version of the GUID generator while not touching
the non-forked sources.
MozReview-Commit-ID: 5kW74yAPUDW
--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/linux/guid_creator.cc => toolkit/crashreporter/breakpad-client/linux/handler/guid_generator.cc
rename : toolkit/crashreporter/google-breakpad/src/common/linux/guid_creator.h => toolkit/crashreporter/breakpad-client/linux/handler/guid_generator.h
extra : rebase_source : 60eb027258833996777469d2a13142077486bee9
This patch enables flake8 rule E713:
"test for membership should be 'not in'" in toolkit/components/telemetry
by removing the relative E713 entry from toolkit/components/telemetry/.flake8
and fixing the files for which the E713 error was reported.
Precisely 6 errors violating E713 rule were found and solved.
MozReview-Commit-ID: 2AaYGgVkxbU
--HG--
extra : rebase_source : 5f655591a18c4d0b2e7189732ebd8db0f20b0c6a
mTelemetryProvider might be empty if |CancelUpdate| is called during update.
In that scenario, the call flow will look like:
CancelUpdate -> UpdateError -> DownloadDone -> set mTelemetryProvider to empty ->
OnStartRequest -> record telemetry with empty key.
So in this patch, move mTelemetryProvider.Truncate() to OnStopRequest.
MozReview-Commit-ID: JDgNUqR4SKa
--HG--
extra : rebase_source : 42aa4c898f403a1189e67e355246ebed5aa4af44
This patch enables flake8 rule E222:
"multiple spaces after operator" in toolkit/components/telemetry
by removing the relative E222 entry from toolkit/components/telemetry/.flake8
and fixing the files for which the E222 error was reported.
Precisely 1 error violating E222 rule was found and solved.
MozReview-Commit-ID: 3xx09jkVu3E
--HG--
extra : rebase_source : 23c7ed40161e843ebe1b47fead2b00e4550b90ff
Enable the rule with the maximums set to avoid current failures, except for test_form_autocomplete which is very
high (82). The levels are set per major area, with existing warnings being changed to errors.
MozReview-Commit-ID: 37M6Ry0Mr1c
--HG--
extra : rebase_source : 07e6864bdd945eb322499912dd702638430c0365
This change automatically evicts content scripts 5 minutes after their last
use, and flushes the entire cache whenever a memory-pressure event is
received.
In the case of memory-pressure events other than heap-minimize, we only evict
scripts that have been in the cache for longer than 3 seconds (which is a
fairly arbitrary number) in order to prevent pre-loads from being evicted and
then immediately re-loaded.
MozReview-Commit-ID: LCXkI9qVMxS
--HG--
extra : rebase_source : b81ed3b9962346154fa18eaee58a7411244a1936
This uses the http-on-opening-request observer that's dispatched in the child
process to begin preloading matching content scripts as early in the load
cycle as possible. Ideally we would use the network predictor for this, but
most of its prediction work happens in the parent process, and there are no
simple ways for us to hook into it.
This currently does not do any pre-loading in the parent process, mainly
because there isn't a good way to distinguish top-level document loads that
are happening directly in the parent versus those that are being proxied from
the child.
MozReview-Commit-ID: dIQW68HtxZ
--HG--
extra : rebase_source : b36f6c8516d0550a0d5bb0df895ce6db76ab3538
Removed the probe in Histogram.json and the code related to it in nsKeygenHandler.cpp
MozReview-Commit-ID: E8lGbx19e2C
--HG--
extra : rebase_source : ef958749e6ad2e2b617fd1efdd09cdd3185bef18
nsTArray::AppendElement may cause memory reallocation if out of capacity.
In nsUrlClassifierStreamUpdater::FetchNextRequest(), we take the reference of
the first element of mPendingRequests and pass its member as reference to
DownloadUpdate(), where mPendingRequests.AppendElement will be called.
If the AppendElement in DownloadUpdate() causes realloc, the reference
becomes dangling.
The most efficient fix is to "move" the reference's (i.e. request)
member variables to DownloadUpdate() but I think in this case we can just
take the value from the array and pass it around with no given that the
array element contains simply a couple of strings and pointers.
MozReview-Commit-ID: KEZ5d3l3HoI
--HG--
extra : rebase_source : 4bf61a8a6f6bc57523dfbb7e5b0b40b7ce77a57a
This problem only occurs when optgroups are involved since they introduce recursion in to the menu-building code and we weren't correctly passing state through
the recursion.
MozReview-Commit-ID: 514zcjgXbIY
--HG--
extra : rebase_source : fdb9309ec8b08f5ab8ca77d901065d5e7db1617f
This problem only occurs when optgroups are involved since they introduce recursion in to the menu-building code and we weren't correctly passing state through
the recursion.
MozReview-Commit-ID: 514zcjgXbIY
--HG--
extra : rebase_source : fdb9309ec8b08f5ab8ca77d901065d5e7db1617f
This patch enables flake8 rule E502:
"the backslash is redundant between brackets" in toolkit/components/telemetry
by removing the relative E502 entry from toolkit/components/telemetry/.flake8
and fixing the files for which the E502 error was reported.
Precisely 8 errors violating E502 rule were found and solved.
MozReview-Commit-ID: 1z8f3JjJ2gt
--HG--
extra : rebase_source : de0622506a4a5a074ea5afa739b8537832aa4096
Replaced all Task occurence by an async function
MozReview-Commit-ID: 1HjHtPRTkl7
--HG--
extra : rebase_source : a08ac1030ef93e97ed4228c129f6f4905d99ba42
This patch enables flake8 rule E111: "indentation is not a multiple of four"
in toolkit/components/telemetry by removing the relative E111 entry from
toolkit/components/telemetry/.flake8 and fixing the files for which the E111
error was reported.
MozReview-Commit-ID: EOVcsllJNJK
--HG--
extra : rebase_source : 9cadb7d9214ed8f242bf6e6a30769c009a502b40
Because we weren't waiting for the first, "about:blank" page to load, the first
`waitForLoad` could trigger for about:blank. Rather than add an additional
`waitForLoad` it's easier (and probably more future-proof) to just wait for
the right page to load.
MozReview-Commit-ID: DZsMnlgRTa
--HG--
extra : rebase_source : c0fc74368e744fb3e111f310ec98a0b964c23edd
The Intl API is not being immediately enabled on Android Beta/Release after all, so we have to keep these fallbacks for the time being.
MozReview-Commit-ID: 1uWfTy58x3I
--HG--
extra : rebase_source : 5db81579d2ed1ab30487d2c5c401c55098862282
In bug 1335309, FileFinder was made to default to not find executables,
and zip.py was made to use the default instead. Which made sense for
most uses of zip.py, except for the jsshell package.
So we add a flag to make zip.py able to strip executable (which happens
when the FileFinder is made to find them), and use that flag for the
jsshell package only.
--HG--
extra : rebase_source : 0202f9acd5e6175d3790aaef026e18c6913cf0c6
The previous implementation regarding to the Flash Blocking Subdocument list blocked all subdocuments that matched the list. This patch changes that so that subdocuments are only blocked if they are on the Subdocument Block List and also are loaded in a Third-Party context.
The changes to cert8.db and key3.db add the https certificate for subdocument.example.com so that testing can verify that a scheme mismatch between the document and its parent results in a third-party classification.
MozReview-Commit-ID: IXnA4iPzB4y
--HG--
extra : rebase_source : 103c1e184d4219e6db9d00da1ea54674a0e216dd
Use entities declared in DTD files so that lozalizers can fill in appropiate
placeholders for each locale.
MozReview-Commit-ID: 9KODExaDnDe
--HG--
extra : rebase_source : e6a9f27c68907aded0483028aee3a17744491a56
This adds back a MOZ_ENABLE_WEBRENDER define, which only controls whether or
not WebRender is enabled at runtime. The default behaviour is changed so that:
- if the user specifies --disable-webrender in the mozconfig, WebRender is
neither built nor enabled
- if the user specifies --enable-webrender in the mozconfig, WebRender is
built and enabled
- if the user specifies --enable-webrender=build in the mozconfig, WebRender is
built but not enabled, except on Android where it is neither built nor enabled
- if the user doesn't specify any of the above, the default behaviour is:
- on nightly/local builds, the same as --enable-webrender=build
- on other channels (e.g. aurora), the same as --disable-webrender
The net effect is that local/Nightly-automation builds will have WebRender
built-in but not enabled where possible (i.e. not Android). However the user
can override this behaviour via mozconfig options to either not build WebRender
at all, or to enable it in addition to building it.
MozReview-Commit-ID: IM7DdSHkIB
This patch changes the crashreporter client code as well as the crash service
code to compute a SHA256 hash of a crash' minidump file and add it to the
crash ping. The crash service code computes the hash on the fly before handing
over the crash to the crash manager; the crash manager will then add it to the
crash ping. The crashreporter client on the other hand sends the hash via the
ping it generates but it also adds it to the event file so that the crash
manager can pick it up and send it along with its own crash ping. On Fennec
the crashreporter activity takes care of computing the hash.
SHA256 hash computation uses nsICryptoHash in the crash service, the
java.security.MessageDigest class in Fennec, the bundled NSS library in the
crashreporter when running on Windows and Mac and the system-provided NSS
library under Linux. The latter is required because the crashreporter client
uses the system curl library which is linked to NSS and which would thus clash
with the bundled one if used together.
This patch introduces two new methods for the nsICrashService interface:
|getMinidumpForID()| and |getExtraFileForID()|, these reliably retrieve the
.dmp and .extra files associated with a crash and ensure the files exist
before returning. These new methods are used in the CrashService for
processing and will become the only way to reliably retrieve those files
from a crash ID.
MozReview-Commit-ID: 8BKvqj6URcO
--HG--
extra : source : a4d8291c56fcde00238ab3166bbe6af6dd602340
To gauge the impact of bug 1343995 on perceived shutdown times, we want to measure how long sanitising actually takes in practice on Android.
MozReview-Commit-ID: 3gSfT8IoO70
--HG--
extra : rebase_source : 19ffdfbf1005ae4beebaa0c9d8befea31e1aa01f
This patch measures the time from an input event creation, to it been
dispatched to PresShell, but just before any handler been executed.
MozReview-Commit-ID: 6ZYra7YYICY
--HG--
extra : rebase_source : fb864ab2ec7af3d59f4a4ccf52667f34dcd588d6
Also, avoid two entirely unused imports.
This avoids loading the various osfile jsms at startup.
The additional shim method for sysinfo is needed in
test_TelemetryEnvironment.js because delaying the intialization of
osfile results in loading osfile_shared_allthreads.jsm after the shim
sysinfo has been added, which initializes
Ci.nsIOSFileConstantsService, which calls into sysinfo in
InitOSFileConstants().
MozReview-Commit-ID: D7IWk20TRt1
--HG--
extra : rebase_source : cf820b1ed72a78ff34e99d2129401c4806a68175
This patch measures the time from an input event creation, to it been
dispatched to PresShell, but just before any handler been executed.
MozReview-Commit-ID: 6ZYra7YYICY
--HG--
extra : rebase_source : 019521545132e72113a87c06cfbe562a9915522d
Undo incorrect change from bug 1341029, and tell ESLint about how Utils is 'global' to some of the videocontrols.xml event listeners.
MozReview-Commit-ID: 9ItMIzwYhEj
--HG--
extra : rebase_source : 4ea996771c00e25e7e33063cfb56cf19c2cf059a
This matches parity with Google Chrome Canary Version 59.0.3046.0 (Official Build) canary (64-bit).
MozReview-Commit-ID: 3rkhiFv8ezX
--HG--
extra : rebase_source : 3cb05e6c1e048bab4c7573bd050ea7477fc128fb
We're adding histograms for both animated tab closing and non-animated tab closing to
avoid a needlessly bi-modal histogram.
MozReview-Commit-ID: J4MzsiwaLcT
--HG--
extra : rebase_source : 82433a160ec8b0e3810758146113f7d0b770857b
Running eslint with --fix didn't fix many of the issues. The majority here had to be fixed by hand but a significant majority of the issues were related to a few files that I was able to use find-and-replace with. I regret not making this in to separate commits of the hand-fixes and the fixes from --fix but I don't recall --fix fixing any of the issues.
MozReview-Commit-ID: ANyg2qfo3Qx
--HG--
extra : rebase_source : 61d2aa91bf9474af3d72a5dea41b25dca442c1b7
In cases, where the caller is looking for the locale to be used for JS Intl API,
we can now replace it with `undefined` which causes JS Intl API to use the default
locale which since bug 1346674 is resolved to the app locale.
This allows us to remove a lot of calls for the app locale.
The remaining ones are split between `AsBCP47` and `AsLangTag`.
Here, the `AsLangTag` is used, as described in the API docs, for cases where
the language string is used for localization purposes, such as language negotaition
matching to our language resources etc.
`AsBCP47` is used when the returned value is handed over to ICU API.
MozReview-Commit-ID: DzmFEUvMq3N
--HG--
extra : rebase_source : 513ed31d995864939aa893e73c81ffdf591a6617
In cases, where the caller is looking for the locale to be used for JS Intl API,
we can now replace it with `undefined` which causes JS Intl API to use the default
locale which since bug 1346674 is resolved to the app locale.
This allows us to remove a lot of calls for the app locale.
The remaining ones are split between `AsBCP47` and `AsLangTag`.
Here, the `AsLangTag` is used, as described in the API docs, for cases where
the language string is used for localization purposes, such as language negotaition
matching to our language resources etc.
`AsBCP47` is used when the returned value is handed over to ICU API.
MozReview-Commit-ID: DzmFEUvMq3N
--HG--
extra : rebase_source : 13fa4c397ba4c79303a2cd76684b5b8c4bd17331