This reverts the change made in Bug 1375549 where the callback application isn't relaunched when the pid is still present. Since the end result of relaunching when the pid hasn't exited is no worse than not relaunching just go ahead and try to relaunch.
The whitelisting function thisTestLeaksUncaughtRejectionsAndShouldBeFixed was replaced by expectUncaughtRejection, and existing calls did not take effect anymore.
MozReview-Commit-ID: 3uOxkgWYWEz
--HG--
extra : rebase_source : 6b27b77da78743880529adae7adf4ec2aa64dfea
extra : intermediate-source : 5809a30a0c4817509beb1078cf336d8367b8107a
extra : source : 6f0394b523a66dab444b8551deb8f3c6c81d8f31
This allows to move it out of the user's way, in case we need to gather
telemetry data to build a daily/aborted-session ping.
MozReview-Commit-ID: BrKZHKOJzqk
--HG--
extra : rebase_source : 2970caf13fe7d527ad36e3f59f481c1f60916990
When we get the usre's frequent visting site from UnifiedComplete.js,
and then open a network connection for it before the user hits
the enter key.
MozReview-Commit-ID: 36moBeeUnyZ
--HG--
extra : rebase_source : 4122534b2d21d2a959fd8dbb8533dd3e0ef75621
The intermittent failure is caused by the innate drawback of the present test,
it doesn't be consistent with the behavior how we actually block the media.
Since we always block media implicit, it would be set in nsGlobalWindow's ctor.
We would never call blockMedia directly, so we can remove the function.
MozReview-Commit-ID: IjYJi5OHQ3X
--HG--
extra : rebase_source : 1cb5eaf76f237f2c8be430ef94f7d8aa6031cf17
Switch telemetry and experiments from AddonManager.getAddonsByTypes()
to AddonManager.getActiveAddons() which gives us less detailed information
in the environment during startup but also means we don't need to load the
extensions database until startup is complete.
MozReview-Commit-ID: 4SxdPHSPovB
--HG--
extra : rebase_source : c4810207bd08c426bb2f5b63b93dfc38e0b0245a
extra : source : c391410c07ed5a9462ca7dec8c01037c9ab14466
Make sure the XPI database is fully loaded before running the
XPIDatabase.shutdown() logic. This race has been present for a long
time but it suddenly became much more common when loading of the XPI
database was deferred until after startup.
MozReview-Commit-ID: 1llKuH3It19
--HG--
extra : rebase_source : de18515e0c38193d70953a49803fadb43be9286c
After this patch for every restartTimer() call we only set a flag to
indicating that we should reset the timer when the timer fires.
MozReview-Commit-ID: GRInHxuEEQM
--HG--
extra : rebase_source : c1961186356f818061553330d7255f3851702825
This patch suggests deprecating proxy.registerProxyScript and replacing it with proxy.register since this API won't support registering anything other than proxy scripts. I normally would be hesitant to suggest making a name change after an API is released, but this API is one that is still in development, and for that reason I think changes like this should be somewhat expected until the API becomes more stable.
MozReview-Commit-ID: 9UeuUjQ6OU5
--HG--
extra : rebase_source : 62aaf71ee3928ceb6cccc1129f5ebbc871d812b8
Display current Stylo status in about:support along with a reason why it is
enabled or disabled.
MozReview-Commit-ID: HZaTL7y2FsY
--HG--
extra : rebase_source : c09f7d281dd9e9ef97d281583cd005964bb5ec38
This gives us source file names with repository info in our generated
symbol files, so that crash reports on crash-stats can link to the
correct source files for files from the Rust standard library.
I've hardcoded the source paths that the Rust project uses, which is
not my favorite thing, but there's no simple way to get this information
otherwise.
MozReview-Commit-ID: 6SeaMqH8xfc
--HG--
extra : rebase_source : 227a52db42b3f86378d744e68b4d88d2d8ba9757
Basic seccomp-bpf support is not being renewed because it has already
passed 99% and is not expected to decrease, but seccomp thread
synchronization and (especially) user namespace support will continue to
be monitored.
MozReview-Commit-ID: FxVKguxKTbV
When debugging the test failures in this test, I noticed that the info() messages indicated we *were* using
moz-extension icon references even when we shouldn't be - they just didn't include the 'fox.svg' bit.
When pausing in the debugger, you can see that all the buttons are blank - we don't load any icon in this case.
This seemed bad, so I updated the test to actually check if we're using a moz-extension URI at all,
and then updated the implementation to actually make it work.
MozReview-Commit-ID: GGXaivJrzxj
--HG--
extra : rebase_source : a64bed37e1fb27c164a0543a0465038d251c709d
With JSM global sharing, the Debugging object is no longer a property
directly on the global of the Sqllite object. Instead of going through
this back door, add a setter method to Sqllite and use that.
MozReview-Commit-ID: HVCZ4Zb42q7
--HG--
extra : rebase_source : d54a0a143c2cd89a8543fd8b3f938abdbec96859
This makes it so updating continue when the parent application doesn't exit (see bug 1375242) so any fixes to the parent application will be applied instead of leaving the client in a broken state.
Changes the wait time for the parent process to 30 seconds since the previous value of 70 seconds was based on nsTerminator which isn't used for this case. It still needs to be greater than the old value of 10 since we've seen cases lately where the process has taken more than 10 seconds.
As DevTools are moving to be an addon and out of mozilla-central, we should remove the
coupling between the mozilla-central code and the DevTools code.
Instead of directly loading and calling the ToolboxProcess, XPIProvider.jsm now uses
events to interact with BrowserToolboxProcess.
MozReview-Commit-ID: HpnMLCILkea
--HG--
extra : rebase_source : 7b090d996fdf25ac364c05e075983454979bdeb5
This patch makes the following changes to the macros.
- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
mostly misused.
- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
universally available now anyway.
- Combines the first two string literal arguments of PROFILER_LABEL and
PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
them to be separate, and it forced a '::' in the label, which isn't always
appropriate. Also, the meaning of the "name_space" argument was interpreted
in an interesting variety of ways.
- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
it clearer they construct RAII objects rather than just being function calls.
(I myself have screwed up the scoping because of this in the past.)
- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
the caller doesn't need to. This makes a *lot* more of the uses fit onto a
single line.
The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).
- Fixes a bunch of labels that had gotten out of sync with the name of the
class and/or function that encloses them.
- Removes a useless PROFILER_LABEL use within a trivial scope in
EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
a good idea.
- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
done within them, instead of at their callsites, because that's a more
standard way of doing things.
--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
All the instances are converted as follows.
- nsSubstring --> nsAString
- nsCSubstring --> nsACString
--HG--
extra : rebase_source : cfd2238c52e3cb4d13e3bd5ddb80ba6584ab6d91
PROFILER_MARKER is now just a trivial wrapper for profiler_add_marker(). This
patch removes it.
--HG--
extra : rebase_source : 9858f34763bb343757896a91ab7ad8bd8e56b076
This patch reduces the differences between builds where the profiler is enabled
and those where the profiler is disabled. It does this by removing numerous
MOZ_GECKO_PROFILER checks.
These changes have the following consequences.
- Various functions and classes are now defined in all builds, and so can be
used unconditionally: profiler_add_marker(), profiler_set_js_context(),
profiler_clear_js_context(), profiler_get_pseudo_stack(), AutoProfilerLabel.
(They are effectively no-ops in non-profiler builds, of course.)
- The no-op versions of PROFILER_* are now gone. The remaining versions are
almost no-ops when the profiler isn't built.
--HG--
extra : rebase_source : 8fb5e8757600210c2f77865694d25162f0b7698a
This patch gives some structure and order to the profiler's API.
It also renames AutoProfilerRegister as AutoProfilerRegisterThread, to match
profiler_register_thread().
This option causes MOZ_USE_SYSTRACE to be defined. The only use of that is in
GeckoProfiler.h where it causes the PROFILER_PLATFORM_TRACING macro to set
android::ScopedTrace. But android::ScopedTrace was defined in widget/gonk/
which was recently removed, so this won't work any more.
Furthermore, all that android::ScopedTrace did was to do a pair of
atrace_{begin,end}() calls, which doesn't seem that useful.