Commit Graph

19222 Commits

Author SHA1 Message Date
Geoff Brown
f208694292 Bug 1545217 - Enable some android gtests in xpcom/tests/gtest; r=jmaher
With changes from bug 1548555, some of the gtests previously disabled on Android
can be re-enabled.

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

--HG--
extra : moz-landing-system : lando
2019-05-06 18:53:55 +00:00
Frederik Braun
18a04317f0 Bug 1548773: Remove support for typemustmatch r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D29803

--HG--
extra : moz-landing-system : lando
2019-05-05 14:41:59 +00:00
Boris Zbarsky
ff72e84ac1 Bug 1547923 part 4. Add nsIGlobalObject::HasJSGlobal(). r=mccr8
Consumers that just care about this boolean state should use this instead of
getting the JSObject* directly.

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

--HG--
extra : moz-landing-system : lando
2019-05-02 21:32:17 +00:00
Masayuki Nakano
006066d2ee Bug 1546888 - Make editor public methods which may be canceled by clipboard event listener return NS_SUCCESS_DOM_NO_OPERATION when it's canceled r=m_kato
This patch makes editors return new error code internally when clipboard event
is dispatched and canceled by script.  This is for making each caller stop
handling the edit action.  However, it's not actual failure.  Therefore, making
public methods return `NS_SUCCESS_DOM_NO_OPERATION` instead via
`EditorBase::ToGenericNSResult()`.

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

--HG--
extra : moz-landing-system : lando
2019-05-02 08:39:53 +00:00
Bogdan Tara
f7ff4f47cc Backed out changeset c2f648fbcbf1 (bug 1533861) for test_TelemetryEnvironment.js failures 2019-05-03 06:22:25 +03:00
Sean Feng
f7c6cfd3d0 Bug 1533861 - Add a telemetry to detect disk type r=chutten,froydnj,bdekoz
Differential Revision: https://phabricator.services.mozilla.com/D29383

--HG--
extra : moz-landing-system : lando
2019-05-02 20:43:36 +00:00
Randell Jesup
c9e7626db4 Bug 1548243: add MOZ_UNLIKELY() to MOZ_LOG_TEST() r=froydnj
Affects MOZ_LOG() since it uses MOZ_LOG_TEST()

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

--HG--
extra : moz-landing-system : lando
2019-05-02 12:56:48 +00:00
Nathan Froyd
482490a2df Bug 1548562 - require nsThread::Init to take a name; r=baku
There's no good reason why we should let unnamed threads through this interface.

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

--HG--
extra : moz-landing-system : lando
2019-05-02 16:05:50 +00:00
Mike Conley
bff8e0ac63 Bug 1533955 - Show some UI to indicate that a subframe has crashed. r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D29238

--HG--
extra : moz-landing-system : lando
2019-05-01 20:05:24 +00:00
Emilio Cobos Álvarez
27fc6a03c9 Bug 1545430 - Implement selector-matching for ::part(). r=heycam
Also fairly straight-forward. This may get more complicated when we do part
forwarding, if any.

I've opened https://github.com/w3c/csswg-drafts/issues/3841 in what I think
would be a cleaner model for forwarding.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 17:28:23 +00:00
Nathan Froyd
a3df20e771 Bug 1461601 - lower the OOM bound for TArray::test_fallible on Windows; r=erahm
Apparently 7 is not low enough.  Maybe 6 will be.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 17:04:40 +00:00
Andreea Pavel
accc389b66 Merge mozilla-inbound to mozilla-central. a=merge 2019-05-01 18:56:07 +03:00
Gijs Kruitbosch
01fbd8d525 Bug 1544009 - stop doing remote drive and directory exist/creation checks for renames/moves on Windows, esp. if in the same directory, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D29222

--HG--
extra : moz-landing-system : lando
2019-05-01 00:17:22 +00:00
Sylvestre Ledru
e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Doug Thayer
5f3d1ecd2e Bug 1546498 - Split out MaybePrefetchMemory's check into two functions r=aklotz
Temporarily just sidestep the issue in bug 1546498 (crash with latest SDK
on startup in Windows 7) by just continuing to use the old method in
Windows 7. We saw no wins in telemetry for Windows 7 anyway, so we should
investigate why that is, and why we see a mysterious crash in the fallback
code, in a followup bug.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 02:08:28 +00:00
Dorel Luca
4ef932ea01 Backed out changeset 1c79adcd8483 (bug 1546498) for build bustage. CLOSED TREE
--HG--
extra : rebase_source : aae1090ddfd8445a8cf03385dc200c65f4acd2e0
2019-04-30 22:59:23 +03:00
Doug Thayer
2d10fab858 Bug 1546498 - Split out MaybePrefetchMemory's check into two functions r=aklotz
Temporarily just sidestep the issue in bug 1546498 (crash with latest SDK
on startup in Windows 7) by just continuing to use the old method in
Windows 7. We saw no wins in telemetry for Windows 7 anyway, so we should
investigate why that is, and why we see a mysterious crash in the fallback
code, in a followup bug.

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

--HG--
extra : moz-landing-system : lando
2019-04-30 05:59:53 +00:00
Honza Bambas
5f945421d4 Bug 1493599 - Expose reason of security blocking on nsILoadInfo and add new http observer notification for failed asyncOpens, r=Honza,dragana
Differential Revision: https://phabricator.services.mozilla.com/D23150

--HG--
extra : moz-landing-system : lando
2019-04-26 10:59:41 +00:00
Noemi Erli
7bb9457084 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-04-24 12:57:59 +03:00
Zibi Braniecki
0890bbe4c2 Bug 1503657 - Implement Fluent DOMOverlays in C++. r=smaug,Pike
Differential Revision: https://phabricator.services.mozilla.com/D27200

--HG--
extra : moz-landing-system : lando
2019-04-24 05:05:11 +00:00
Edwin Gao
9994405ece Bug 1544961 - comment on gtests that are disabled, disable ThreadUtils.IdleRunnableMethod and Timers.FindExpirationTime for windows10-aarch64 r=jmaher,gbrown,dmajor
Changes:
- added comments for tests being disabled
- disabled two additional tests in order to green the run

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

--HG--
extra : moz-landing-system : lando
2019-04-23 00:21:37 +00:00
Sylvestre Ledru
a1dce6440a Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-22 16:35:03 +00:00
Andrew McCreight
f5e6644f9c Bug 1545851, part 2 - Mark nsISupportsPrimitive and subinterfaces as builtinclass. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D28287

--HG--
extra : moz-landing-system : lando
2019-04-22 14:35:18 +00:00
Andrew McCreight
19c1077e83 Bug 1545851, part 1 - Change test_process_directives.js to use nsIProperty. r=froydnj
This will let us make nsISupportsString builtinclass.

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

--HG--
extra : moz-landing-system : lando
2019-04-22 14:34:55 +00:00
Ryan Hunt
3675f2449b Bug 1534395 - Rename nsITabParent to nsIRemoteTab. r=nika,mconley
nsITabParent is exposed to frontend code and is generally used as a representation of a remote tab. We could just rename the interface to nsIBrowserParent and worry about it later, but I think it's better to rename the interface to nsIRemoteTab so that we can later work on splitting the interface away from the PBrowser protocol.

Note: Some frontend code refers to a TabParentId. This commit renames this to RemoteTabId. We need to figure out the purpose of TabId with fission.

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

--HG--
rename : dom/interfaces/base/nsITabParent.idl => dom/interfaces/base/nsIRemoteTab.idl
extra : rebase_source : 9d8a1790a7bb10195ad063644d1a93d63b2afb72
2019-04-09 15:59:37 -05:00
Emilio Cobos Álvarez
3bb02fa89f Bug 1546048 - Use std::ffi::CStr and the cstr crate instead of custom stuff in xpcom. r=lina
Also, this checks for strings with nulls, which is nice (though I guess an
uncommon mistake).

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

--HG--
extra : moz-landing-system : lando
2019-04-22 05:09:23 +00:00
Myk Melez
e2338641e4 Bug 1460811 - migrate XULStore to rkv r=bgrins,lina
Differential Revision: https://phabricator.services.mozilla.com/D25355

--HG--
rename : toolkit/components/xulstore/components.conf => toolkit/components/xulstore/tests/gtest/moz.build
extra : moz-landing-system : lando
2019-04-22 02:59:51 +00:00
Coroiu Cristina
5f4315f3ee Backed out changeset 37054e6d6bbb (bug 1460811) for marionette failures at marionette_harness/tests/unit/test_cli_arguments.py on a CLOSED TREE 2019-04-20 00:05:55 +03:00
Andrew McCreight
3b1ec85b01 Bug 1545819 - nsI-ify some XPCOM test interfaces in NotXPCOMTest.idl. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D28237

--HG--
extra : moz-landing-system : lando
2019-04-19 19:19:27 +00:00
Byron Campen [:bwc]
af20a470c6 Bug 1545120: Simplify this callback management stuff a little. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D27914

--HG--
extra : moz-landing-system : lando
2019-04-18 14:53:18 +00:00
Myk Melez
2eece48676 Bug 1460811 - migrate XULStore to rkv r=bgrins,lina
Differential Revision: https://phabricator.services.mozilla.com/D25355

--HG--
rename : toolkit/components/xulstore/components.conf => toolkit/components/xulstore/tests/gtest/moz.build
extra : moz-landing-system : lando
2019-04-19 17:42:48 +00:00
Andreea Pavel
69afeaabd9 Merge mozilla-central to autoland. on a CLOSED TREE
--HG--
extra : amend_source : fe25c64f152924b2a06dc54b745943b760b3552c
2019-04-19 06:56:17 +03:00
Razvan Maries
1f6c35708a Backed out changeset 2f8f0e53a7db (bug 1460811) for leakcheck perma failures. CLOSED TREE 2019-04-19 00:16:32 +03:00
Haik Aftandilian
00b5eeea1e Bug 1543809 - Can't run with XPCOM_MEM_BLOAT_LOG=1 on OS X r=Alex_Gaynor
Don't assume XPCOM_MEM_BLOAT_LOG is a filename. XPCOM_MEM_BLOAT_LOG and XPCOM_MEM_LEAK_LOG can be set to a filename or "1" or "2" for logging to stdout and stderr respectively.

Set the debug write directory for XPCOM_MEM_LEAK_LOG in the same way we already to for XPCOM_MEM_BLOAT_LOG.

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

--HG--
extra : moz-landing-system : lando
2019-04-18 15:17:08 +00:00
Myk Melez
f61d3b4399 Bug 1460811 - migrate XULStore to rkv r=bgrins,lina
Differential Revision: https://phabricator.services.mozilla.com/D25355

--HG--
rename : toolkit/components/xulstore/components.conf => toolkit/components/xulstore/tests/gtest/moz.build
extra : moz-landing-system : lando
2019-04-18 19:27:12 +00:00
Rob Wu
4a6f84f91d Bug 1544834 - Replace deprecated generics in test code r=evilpie
- `Array.map` becomes `Array.from`
- Array copying via `Array.slice` becomes `Array.from`.
- `Array.forEach` that did not rely on closures becomes `for`-`of` loops.
- Anything else: `Array.X` becomes `Array.prototype.X`.

Complex cases:

dom/bindings/test/TestInterfaceJS.js and
dom/bindings/test/test_exception_options_from_jsimplemented.html
use `Array.indexOf` to generate an error with a specific error message.
Switched to `Array.prototype.forEach` to generate the same error.

js/src/jit-test/tests/basic/exception-column-number.js
In this test `Array.indexOf()` is used to generate an error. Since the
exact message doesn't matter, I switched to `Array.from()`.

Intentionally not changed:

editor/libeditor/tests/browserscope/lib/richtext/richtext/js/range.js
Did not modify because this is 3rd-party code and the code uses
feature detection as a fall back when Array generics are not used.

testing/talos/talos/tests/dromaeo/lib/mootools.js
Did not modify because mootools adds the `Array.slice` method to the
`Array` object.

Not changed because they check the implementation of Array generics:
js/src/jit-test/tests/basic/arrayNatives.js
js/src/jit-test/tests/basic/bug563243.js
js/src/jit-test/tests/basic/bug618853.js
js/src/jit-test/tests/basic/bug830967.js
js/src/jit-test/tests/jaeger/recompile/bug656753.js
js/src/jit-test/tests/self-hosting/alternate-static-and-instance-array-extras.js
js/src/tests/non262/Array/generics.js
js/src/tests/non262/Array/regress-415540.js
js/src/tests/non262/extensions/regress-355497.js
js/src/tests/non262/extensions/typedarray-set-neutering.js

Depends on D27802

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

--HG--
extra : moz-landing-system : lando
2019-04-17 19:03:19 +00:00
Razvan Maries
98807b06a6 Backed out changeset 081a659775d3 (bug 1529879) for xpcshell perma failures. CLOSED TREE 2019-04-18 20:59:54 +03:00
Dave Townsend
40eb94ced2 Bug 1529879: Block changing the profile list when another process has changed it. r=froydnj,Gijs,flod
On startup we record the size and modified time of the profile lists. If
changed we refuse to flush any new changes to disk. Also adds a getter to check
if they've changed so the UI can do something sensible.

All attempts to flush are now checked for success. In some cases in early
startup the failure mode isn't great, we just quit startup. The assumption
though is that it's extremely unlikely that the files will have changed on disk
in the time between when they are read and when profile selection occurs, likely
less than a second later.

The profile reset flow is changed to only delete the old profile and flush once
all the migration has completed, so if something fails the user gets back to
their old profile.

In testing I ended up having to fix bug 1522584 so background file deletions on
a background thread are safer.

I haven't implemented any UI tests right now since making modifications to the
profiles means modifying the actual user's profiles which I'm not keen to do.
See bug 1539868.

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

--HG--
extra : moz-landing-system : lando
2019-04-18 04:34:29 +00:00
Gurzau Raul
5525d8c102 Backed out changeset 77dbf6f2d6d4 (bug 1529879) for Windows build bustages at Unified_cpp_toolkit_profile0.obj on a CLOSED TREE. 2019-04-18 03:21:42 +03:00
Gabriele Svelto
ea01f0aed2 Bug 1386760 - Remove the ExecutableName annotation r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D27885

--HG--
extra : moz-landing-system : lando
2019-04-17 14:05:42 +00:00
Dave Townsend
a2a1b4d1f5 Bug 1529879: Block changing the profile list when another process has changed it. r=froydnj,Gijs,flod
On startup we record the size and modified time of the profile lists. If
changed we refuse to flush any new changes to disk. Also adds a getter to check
if they've changed so the UI can do something sensible.

All attempts to flush are now checked for success. In some cases in early
startup the failure mode isn't great, we just quit startup. The assumption
though is that it's extremely unlikely that the files will have changed on disk
in the time between when they are read and when profile selection occurs, likely
less than a second later.

The profile reset flow is changed to only delete the old profile and flush once
all the migration has completed, so if something fails the user gets back to
their old profile.

In testing I ended up having to fix bug 1522584 so background file deletions on
a background thread are safer.

I haven't implemented any UI tests right now since making modifications to the
profiles means modifying the actual user's profiles which I'm not keen to do.
See bug 1539868.

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

--HG--
extra : moz-landing-system : lando
2019-04-17 20:06:20 +00:00
Ian Moody
ac18aebd72 Bug 1544286 - xpcom/ manual ESLint no-throw-literal fixes. r=erahm
Differential Revision: https://phabricator.services.mozilla.com/D27451

--HG--
extra : moz-landing-system : lando
2019-04-16 15:02:10 +00:00
Kirk Steuber
1b86be999a Bug 1520321 - Implement XPCOM interface for BITS r=lina
This patch introduces an asynchronous XPCOM interface for the bits client added in Bug 1523417

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

--HG--
extra : moz-landing-system : lando
2019-04-15 19:44:35 +00:00
Geoff Brown
6668415460 Bug 1284693 - Disable gtest TestPipes on Android; r=jmaher
I missed this intermittent when enabling Android gtests in bug 1318091. Disable
the failing test on Android only, to green up Android gtest.

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

--HG--
extra : moz-landing-system : lando
2019-04-15 17:13:45 +00:00
Olli Pettay
b024b00b94 Bug 1515216, ensure IdleTaskRunners are added only once to RefreshDriver's idle runnable list, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D27424

--HG--
extra : moz-landing-system : lando
2019-04-15 15:41:15 +00:00
Doug Thayer
492ceb9eae Bug 1538279 - Use CreateFileMapping with SEC_IMAGE to prefetch Windows DLLs r=aklotz
Our old approach was reading this into a region of unexecutable memory,
meaning when we actually loaded the library it needed to be loaded into
executable memory. This fixes that. I suspect that any gains we were
seeing previously were due to hardware effects.

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

--HG--
extra : moz-landing-system : lando
2019-04-13 18:46:18 +00:00
Doug Thayer
2d3776cd66 Bug 1538279 - Only readahead DLLs in parent process r=glandium
There shouldn't be any need to do this for content processes as
the DLL should already be in the system file cache.

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

--HG--
extra : moz-landing-system : lando
2019-04-13 18:46:13 +00:00
Doug Thayer
ebd6ab40a3 Bug 1538279 - Extract nsZipArchive's madvise and similar to a helper r=glandium,froydnj
This is just to make it simpler to use PrefetchVirtualMemory in subsequent patches.

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

--HG--
extra : moz-landing-system : lando
2019-04-13 18:46:04 +00:00
Henri Sivonen
a07d039783 Bug 1543693 - Add missing nsReadableUtils wrappers for conversions between UTF-8 and Latin1 XPCOM string. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D27234

--HG--
extra : moz-landing-system : lando
2019-04-12 17:49:11 +00:00
Sylvestre Ledru
7f60810d86 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-12 13:14:25 +00:00
Cosmin Sabou
c64f16b342 Backed out 3 changesets (bug 1538279) for mass test failures. CLOSED TREE
Backed out changeset af07f58d18cc (bug 1538279)
Backed out changeset 508ee4cf9ea2 (bug 1538279)
Backed out changeset 6f2e7c819c11 (bug 1538279)
2019-04-12 07:47:53 +03:00
Cosmin Sabou
3e6ef756b6 Merge mozilla-central to autoland. 2019-04-12 06:48:11 +03:00
Doug Thayer
8f38b6246d Bug 1538279 - Use CreateFileMapping with SEC_IMAGE to prefetch Windows DLLs r=aklotz
Our old approach was reading this into a region of unexecutable memory,
meaning when we actually loaded the library it needed to be loaded into
executable memory. This fixes that. I suspect that any gains we were
seeing previously were due to hardware effects.

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

--HG--
extra : moz-landing-system : lando
2019-04-12 02:18:34 +00:00
Doug Thayer
13a4a8518f Bug 1538279 - Only readahead DLLs in parent process r=glandium
There shouldn't be any need to do this for content processes as
the DLL should already be in the system file cache.

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

--HG--
extra : moz-landing-system : lando
2019-04-12 02:17:48 +00:00
Doug Thayer
358b289ecc Bug 1538279 - Extract nsZipArchive's madvise and similar to a helper r=glandium,froydnj
This is just to make it simpler to use PrefetchVirtualMemory in subsequent patches.

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

--HG--
extra : moz-landing-system : lando
2019-04-12 02:17:18 +00:00
Cameron McCormack
ad0b101ef6 Bug 1543582 - Only include quotes around XPCOM strings in MOZ_DBG, not operator<<. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D27031

--HG--
extra : moz-landing-system : lando
2019-04-11 23:44:57 +00:00
Mike Hommey
0376919567 Bug 1543009 - Move layout debugger xpcom components to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26894
2019-04-11 16:23:53 +09:00
Mike Hommey
d89350611b Bug 1543009 - Move code coverage xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26893
2019-04-11 16:23:52 +09:00
Mike Hommey
8148056282 Bug 1543009 - Move Windows DHCP client xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26892
2019-04-11 16:23:52 +09:00
Mike Hommey
07aab2b391 Bug 1543009 - Move Android widget xpcom components to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26891
2019-04-11 16:22:07 +09:00
Mike Hommey
360d145ec2 Bug 1543009 - Move Windows system proxy xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26890
2019-04-11 16:22:06 +09:00
Mike Hommey
4befa68a32 Bug 1543009 - Move OSX system proxy xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26889
2019-04-11 16:22:05 +09:00
Mike Hommey
ac3c9a8844 Bug 1543009 - Move Android system proxy xpcom componen to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26888
2019-04-11 16:22:04 +09:00
Mike Hommey
a180bcd741 Bug 1543009 - Move Windows webspeech xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26887
2019-04-11 16:22:03 +09:00
Mike Hommey
f2903b2101 Bug 1543009 - Move OSX webspeech xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26886
2019-04-11 16:22:02 +09:00
Mike Hommey
657307cf3a Bug 1543009 - Move Android webspeech xpcom component to static registration. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D26885
2019-04-11 16:21:44 +09:00
Martin Stransky
e1d04ebd15 Bug 1433685 - Remove nsGConfService, r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D26484

--HG--
extra : moz-landing-system : lando
2019-04-10 10:18:14 +00:00
Julian Descottes
30433020fe Bug 1541970 - Support incontentshell attribute for XUL panel;r=NeilDeakin
(more a feedback request than review request at this stage)

Adding a new attribute to the panel was the easiest way I could find to make this work without too much plumbing
However I don't know how to check that the attribute comes from a chrome privileged script. I tried using PresContext()->IsChrome() but this is also false in our situation.

Would you prefer another approach? Otherwise what kind of test would you write for this kind of feature?

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

--HG--
extra : moz-landing-system : lando
2019-04-09 09:41:56 +00:00
Mike Hommey
5c5f0f87f5 Bug 1542214 - Prevent registering the same CID and contract IDs during component manager initialization. r=froydnj
Because not all static components are using the static registration yet,
we can end up in situations where a same component is registered
multiple times, which can have some unexpected consequences.

Interestingly enough, this change revealed that we did have static
registration in place for components that were kept under the old system
after bug 1478124 and bug 1524687.

There are also possibly some non-obvious things that can happen while
migrating the remaining components, like what happened to me while I
worked on @mozilla.org/widget/components;1 (see bug 1542214 comment 0).

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

--HG--
extra : moz-landing-system : lando
2019-04-09 18:39:00 +00:00
Mike Hommey
d452755d02 Bug 1542996 - Remove duplicate component registration. r=kmag
Bug 1478124 and bug 1524687 converted many things to static xpcom
component registration, but somehow left the corresponding C++
initialization.

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

--HG--
extra : moz-landing-system : lando
2019-04-09 18:58:49 +00:00
Michael Froman
385731ac09 Bug 1539029 - pt 2 - add RDD process selector to prefs module. r=froydnj
Depends on D26566

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

--HG--
extra : moz-landing-system : lando
2019-04-09 21:07:40 +00:00
Michael Froman
0b07404bf5 Bug 1539029 - pt 1 - give RDD its own process selector. r=froydnj
Originally, RDD reused the GPU process selector since they were
using all the same services, and it reduced the number of places
that had to be touched.  Now that RDD needs pref handling, it
needs its own process selector to avoid GPU inheriting pref
handling.

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

--HG--
extra : moz-landing-system : lando
2019-04-09 21:13:16 +00:00
Andrew McCreight
648311b759 Bug 1542854 - Make [System Principal] into a static atom. r=froydnj
Whenever chrome JS code leaks, we leak the dynamic atom "[System
Principal]". This causes an assertion, which hangs the browser in
stack walking code for multiple minutes on OSX. As a bandaid, make
this atom static so it won't leak.

My first instinct is that it would make sense to use this new atom
directly in SystemPrincipal, but atoms are represented internally as a
kind of nsAString, but principal code uses nsACStrings, so you end up
with an extra conversion from 16-bit to 8-bit.

This atom is also going to be present in any process running chrome
JS, so this will save a little bit of memory.

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

--HG--
extra : moz-landing-system : lando
2019-04-09 13:23:28 +00:00
Mike Hommey
071a2fe984 Bug 1541792 - Replace linker magic with manual component registration. r=froydnj
Before bug 938437, we had a rather large and error-prone
nsStaticXULComponents.cpp used to register all modules. That was
replaced with clever use of the linker, which allowed to avoid the mess
that maintaining that file was.

Fast forward to now, where after bug 1524687 and other work that
preceded it, we have a much smaller number of remaining static xpcom
components, registered via this linker hack, and don't expect to add
any new ones. The list should eventually go down to zero.

Within that context, it seems to be the right time to get rid of the
magic, and with it the problems it causes on its own.

Some of those components could probably be trivially be converted to
static registration via .conf files, but I didn't want to deal with the
possible need to increase the number of dummy modules in XPCOMInit.cpp.
They can still be converted as a followup.

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

--HG--
extra : moz-landing-system : lando
2019-04-05 02:30:56 +00:00
Aaron Klotz
38457d2b92 Bug 1541130: Add XRE_GetChildProcBinPathType to nsXULAppAPI.h; r=froydnj,jld on a CLOSED TREE
The binary path type of a particular content process is useful information
outside of IPC. Given that `XRE_EnableSameExecutableForContentProc` already
exists, and given that the binary path type is closely related to
`GeckoProcessType`, I've added a new function, `XRE_GetContentProcBinPathType`.

The mapping of process type to binary type has been moved to the
`GeckoProcessTypes` definitions.

This patch also modifies `ipc::GeckoChildProcessHost` to call into the new
function.

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

--HG--
extra : histedit_source : acdfd2357fd06551dff5286c6b7c56bd92dd347b
2019-04-09 00:45:24 +03:00
Geoff Brown
8d88b9a596 Bug 1318091 - Disable failing android gtests; r=bc
Disable gtests observed to fail on Android. Some of these are simple build
failures and failures due to file permissions or paths, while other failures
are more obscure.
Once Android gtests are running on mozilla-central, I will file follow-up
bugs inviting teams to investigate the failures and re-enable Android gtests
that are important to them.

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

--HG--
extra : moz-landing-system : lando
2019-04-08 20:58:21 +00:00
Andreea Pavel
b7f98e54a5 Backed out changeset 8ef30ebad16c (bug 1541130) build bustages a=backout 2019-04-08 22:25:14 +03:00
Aaron Klotz
e609e27b92 Bug 1541130: Add XRE_GetChildProcBinPathType to nsXULAppAPI.h; r=froydnj,jld
The binary path type of a particular content process is useful information
outside of IPC. Given that `XRE_EnableSameExecutableForContentProc` already
exists, and given that the binary path type is closely related to
`GeckoProcessType`, I've added a new function, `XRE_GetContentProcBinPathType`.

The mapping of process type to binary type has been moved to the
`GeckoProcessTypes` definitions.

This patch also modifies `ipc::GeckoChildProcessHost` to call into the new
function.

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

--HG--
extra : moz-landing-system : lando
2019-04-08 18:19:06 +00:00
Lina Cambridge
6bef7b8477 Bug 1542528 - Add an xpcom::c_str macro for creating static C strings. r=froydnj
This is based on the `c_str` macro in `js/rust/src/heap.rs`, but
returns a `NulTerminatedCStr` type that can be cast to a pointer.

This commit also changes `ThreadPtrHolder::new` to take a
`NulTerminatedCStr`, and removes an unnecessary `RefPtr` reference in
`is_current_thread`.

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

--HG--
extra : moz-landing-system : lando
2019-04-08 14:43:35 +00:00
Andrew McCreight
327d0da02c Bug 1463569 - Add a way to log the sizes of GC things to GC logs. r=sfink
If the environment variable MOZ_GC_LOG_SIZE is set, then GC logs will
include some extra data that indicates how much memory the GC thing
uses, including extra data hanging off of it. This can be used
calculate finer grained information about the memory usage of scripts.

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

--HG--
extra : moz-landing-system : lando
2019-04-07 13:35:44 +00:00
Andrew McCreight
8f597c742f Bug 1541684, part 3 - Statically compute if a method is reflectable. r=nika
XPCConvert::IsMethodReflectable() is derived entirely from
nsXPTMethodInfo, so we can compute it at build time and include it in
nsXPTMethodInfo. It is the only use of mNotXPCOM and mHidden, so we
can get rid of those fields at the same time.

This paves the way for getting rid of XPCWrappedJSClass::mDescriptors
in the next patch.

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

--HG--
extra : moz-landing-system : lando
2019-04-05 23:48:18 +00:00
Jeff Walden
5327fe7f3e Bug 1542120 - Add js/public/Warnings.h for warning-related JSAPI. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D26273

--HG--
rename : js/src/jsapi.h => js/public/Warnings.h
extra : moz-landing-system : lando
2019-04-05 22:52:04 +00:00
Sylvestre Ledru
03fc65347c Bug 1542146 - Apply the change with the option StatementMacros from clang-format-8 r=andi
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-05 21:42:17 +00:00
Sylvestre Ledru
03c8e8c2dd Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-05 21:41:42 +00:00
Csoregi Natalia
ba58e936bd Backed out changeset 4ad80127f89f (bug 1519636) for bustage on MarkupMap.h and nsAccessibilityService.cpp. CLOSED TREE 2019-04-05 09:48:19 +03:00
Sylvestre Ledru
d1c1878603 Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-04 21:36:16 +00:00
Narcis Beleuzu
ed1878b2ce Backed out 4 changesets (bug 1541684) for bustages on xpcprivate.h . CLOSED TREE
Backed out changeset b021ea89cf04 (bug 1541684)
Backed out changeset 16d5f0b792d4 (bug 1541684)
Backed out changeset a37029984f13 (bug 1541684)
Backed out changeset 900f639d72a3 (bug 1541684)
2019-04-05 03:57:09 +03:00
Nathan Froyd
0273818ea0 Bug 1542048 - mark aarch64 unix's PrepareAndDispatch as used; r=mccr8
Otherwise, LTO will eliminate it because the compiler can't see the
calls to PrepareAndDispatch from the relevant assembly file.

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

--HG--
extra : moz-landing-system : lando
2019-04-04 21:13:47 +00:00
Nathan Froyd
3cb7a40d1f Bug 1538236 - fix LTO issues with arm xptcstubs; r=mccr8
ARM's xptcstubs use a slightly different setup for PrepareAndDispatch
than...well, all of our other stubs.  This difference appears to be
causing problems with LTO builds.  Change the setup to be more like our
other stubs, which additionally gets rid of some of the `asm` nonsense.

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

--HG--
extra : moz-landing-system : lando
2019-04-04 21:14:18 +00:00
Andrew McCreight
98dd357c68 Bug 1541684, part 3 - Statically compute if a method is reflectable. r=nika
XPCConvert::IsMethodReflectable() is derived entirely from
nsXPTMethodInfo, so we can compute it at build time and include it in
nsXPTMethodInfo. It is the only use of mNotXPCOM and mHidden, so we
can get rid of those fields at the same time.

This paves the way for getting rid of XPCWrappedJSClass::mDescriptors
in the next patch.

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

--HG--
extra : moz-landing-system : lando
2019-04-04 21:01:24 +00:00
Narcis Beleuzu
24dbe577a5 Backed out changeset 389b6bbd76db (bug 1519636) for bustages on MarkupMap.h . CLOSED TREE 2019-04-05 00:27:56 +03:00
Sylvestre Ledru
399dbd28fe Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-04 20:12:23 +00:00
Ciure Andrei
58c8915ecd Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-04-04 00:57:38 +03:00
Randall E. Barker
1d15aad0e5 Bug 1541282 - Use native call in NS_SetCurrentThreadName() on Android r=froydnj
PR_SetCurrentThreadName() is broken on Android (Bug 1541216).
In order to work around this issue, NS_SetCurrentThreadName() will
call  prctl(PR_SET_NAME, name) until the underlying nspr can be
fixed.

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

--HG--
extra : moz-landing-system : lando
2019-04-03 00:23:22 +00:00
Dave Townsend
4ab7a3401f Bug 1533077: Remove nsIAppStartup.eRestartNotSameProfile r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D22345

--HG--
extra : moz-landing-system : lando
2019-04-03 15:24:59 +00:00
Dave Townsend
3dc26d41d2 Bug 1540854: Add MOZ_DBG support for nsIURI and nsIFile. r=froydnj
I am 90% sure that this is wrong but this is the only way I can get it to
compile and work. Unlike other examples of supporting MOZ_DBG it only declares
an operator for `nsIURI* not` `const nsIURI`. I had to drop the const because
then I couldn't call GetSpec as it isn't marked const. I had to switch to a
pointer since otherwise it would complain about virtual methods.

Still in practice this works, I think it is rare that we hold an nsIURI in
anything other than a pointer and same for the constness.

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

--HG--
extra : rebase_source : 9760674375563ec312568caf4a5ad46facfb6f68
2019-04-01 15:05:37 -07:00
Nathan Froyd
cb076fc90d Bug 1520929 - part 1 - add an isWowARM64 property to nsSystemInfo; r=aklotz
In addition to knowing whether we're running x86-on-x86-64, we'd also
like to know about the x86-on-arm64 case.  The current code doesn't
provide enough information to determine that, so we need to query a
little bit harder.
2019-04-03 04:44:49 -05:00
Daniel Varga
14dc5b7d8a Merge mozilla-inbound to mozilla-central. a=merge 2019-04-03 09:05:41 +03:00
Brindusan Cristian
f0bb72977e Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-04-02 18:50:37 +03:00
Petr Sumbera
a13bbbbdf7 Bug 1432125 - Solaris xptcall clean-up - support 64bits gcc/clang only r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D25448

--HG--
extra : moz-landing-system : lando
2019-04-02 00:57:29 +00:00
Daosheng Mu
0965abeaa7 Bug 1520339 - Part 2: handling memory reporting for VR process. r=kip,erahm
Differential Revision: https://phabricator.services.mozilla.com/D25321

--HG--
extra : moz-landing-system : lando
2019-04-02 05:13:17 +00:00
Andrew Osmond
dbfad894d9 Bug 1501794 - Implement img decode API. r=bzbarsky,tnikkel
The img decode API allows a web author to request that an image be
decoded at its intrinsic size and be notified when it has been
completed. This is useful to ensure an image is ready to display before
adding it to the DOM tree -- this will help reduce flickering.

Differential Revision: https://phabricator.services.mozilla.com/D11362
2019-04-02 08:56:54 -04:00
Eden Chuang
72b79c6fbd Bug 1442778 - Add "chromeContext" parameter to console API and console service messages. r=smaug
1. Adding a new attribute chromeContext in ConsoleEvent
2. Adding a new boolean attribute isFromChromeContext in nsIConsoleMessage
3. Sending IsFromChromeContext to the parent process

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

--HG--
extra : moz-landing-system : lando
2019-04-01 22:42:34 +00:00
Honza Bambas
1296f23329 Bug 1538812 - Remove the dangerous default 'NS_ASSIGNMENT_DEPEND' of argument 'assignment' on NS_NewByteInputStream to let it be defined expicitly and thus visibly, r=michal
Differential Revision: https://phabricator.services.mozilla.com/D25462

--HG--
extra : moz-landing-system : lando
2019-04-03 11:39:41 +00:00
Nathan Froyd
1916bd6570 Bug 1525303 - make LazyLogModule::operator LogModule* inline; r=erahm
Testing has determined that doing this has no detrimental size benefit,
and a small positive performance impact.

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

--HG--
extra : moz-landing-system : lando
2019-04-02 20:35:38 +00:00
Jeff Gilbert
8d31424d9e Bug 1540357 - Fix implicit int truncation in dom/canvas's xpcom/* includes. r=mccr8
Depends on D25499

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

--HG--
extra : moz-landing-system : lando
2019-04-02 17:00:51 +00:00
Gerald Squelart
e2d15a1cfb Bug 1429613 - Variant matcher callbacks renamed from match to operator() - r=froydnj
Mechanical change from Matcher::match(...) to Matcher::operator()(...).
This will now permit the use of generic lambdas, and facilitate the
implementation of multi-lambda match.

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

--HG--
extra : moz-landing-system : lando
2019-04-02 11:53:47 +00:00
Andrew McCreight
89bd4fe4e5 Bug 1540794 - Remove nsIID.h. r=froydnj
This file only includes nsID.h, and is unused.

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

--HG--
extra : moz-landing-system : lando
2019-04-01 18:49:28 +00:00
Jonathan Kew
f5e8791f61 Bug 1533428 - patch 4 - Include chromium-config.mozbuild in the moz.build for a bunch more directories, so that IPC-related headers are available. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D22922

--HG--
extra : moz-landing-system : lando
2019-04-01 14:32:44 +00:00
Philip Chimento
7262bcdffb Bug 1506324 - Use DefaultGlobalClassOps in existing code. r=tcampbell
Reviewers: tcampbell

Subscribers: jandem

Bug #: 1506324

Differential Revision: https://phabricator.services.mozilla.com/D11571
2019-03-31 15:30:45 -07:00
Sylvestre Ledru
ef0bfc3822 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-03-31 15:12:55 +00:00
Narcis Beleuzu
d20e1695b0 Merge autoland to mozilla-central. a=merge 2019-03-30 23:43:56 +02:00
Cameron McCormack
eedb6aebd4 Bug 1538081 - Part 3: Add operator<<(ostream&) definitions for a few common types. r=froydnj,gerald
Depends on D25023

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

--HG--
extra : moz-landing-system : lando
2019-03-30 04:26:26 +00:00
Cameron McCormack
9796d08b83 Bug 1538081 - Part 1: Add MOZ_DBG macro. r=froydnj,gerald
Differential Revision: https://phabricator.services.mozilla.com/D24583

--HG--
extra : moz-landing-system : lando
2019-03-30 04:25:13 +00:00
Ciure Andrei
615006146b Backed out 4 changesets (bug 1538081) for causing BaseElf.cpp bustages CLOSED TREE
Backed out changeset ced61a86c74c (bug 1538081)
Backed out changeset d6d331abbf0e (bug 1538081)
Backed out changeset 26df801e44db (bug 1538081)
Backed out changeset 113ac188a69e (bug 1538081)
2019-03-30 03:02:15 +02:00
Cameron McCormack
91e3ec9952 Bug 1538081 - Part 3: Add operator<<(ostream&) definitions for a few common types. r=froydnj,gerald
Depends on D25023

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

--HG--
extra : moz-landing-system : lando
2019-03-30 00:21:24 +00:00
Cameron McCormack
3bb950d9a6 Bug 1538081 - Part 1: Add MOZ_DBG macro. r=froydnj,gerald
Differential Revision: https://phabricator.services.mozilla.com/D24583

--HG--
extra : moz-landing-system : lando
2019-03-30 00:21:14 +00:00
Nathan Froyd
dc25b5a9dc Bug 1539605 - add fast paths for integer formatting on nsTSubstring; r=erahm
This way we don't have to go through a bunch of printf nonsense, and we
ought to be able to arrive at optimized routines that take advantage of
constant radices, etc.

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

--HG--
extra : moz-landing-system : lando
2019-03-29 19:38:53 +00:00
Olli Pettay
e1e112a4ad Bug 1540166, avoid some useless ForgetSkippable handling while we're already dealing with snow-white objects, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D25414

--HG--
extra : rebase_source : 3acdc1a8de8f6d729971527e6cbe9fd58cdc4610
2019-03-29 17:52:14 +02:00
Oana Pop Rus
dc9eba46cc Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-30 00:05:29 +02:00
Nathan Froyd
aed549848b Bug 1539815 - move inner queue creation into the PrioritizedEventQueue constructor; r=erahm
Outside code shouldn't have to care how many levels of priority
PrioritizedEventQueue manages.

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

--HG--
extra : moz-landing-system : lando
2019-03-29 20:37:09 +00:00
Boris Zbarsky
384767d49a Bug 1539803. Make nsIObserverService builtinclass. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D25221

--HG--
extra : moz-landing-system : lando
2019-03-28 14:13:51 +00:00
Boris Zbarsky
6ed8efae89 Bug 1539499. Make nsITimer builtinclass. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D25191

--HG--
extra : moz-landing-system : lando
2019-03-28 13:09:03 +00:00
Boris Zbarsky
92f7b5dd5e Bug 1539716. Remove nsIHashable. r=froydnj
It's dead code.

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

--HG--
extra : moz-landing-system : lando
2019-03-28 13:07:05 +00:00
Oana Pop Rus
226e6c59d9 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-28 12:23:56 +02:00
Oana Pop Rus
47e94b5d6e Merge inbound to mozilla-central. a=merge 2019-03-28 12:11:35 +02:00
Mark Banner
dba6983e75 Bug 1415265 - Remove now unnecessary .eslintrc.js files or entries. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D23850

--HG--
extra : moz-landing-system : lando
2019-03-28 09:38:14 +00:00
Dave Townsend
6403c58cd7 Bug 1527704: Store install information in profiles.ini and use installs.ini as a backup in case an earlier Firefox throws it away. r=froydnj
Originally we stored the new information about installation defaults in
installs.ini since older versions of Firefox would throw away any new data in
profiles.ini any time they made changes to the profiles. That does however mean
we have to load two files on startup.

This changes things so that we save all the data in profiles.ini as well as a
version tag and still save the install data into installs.ini. An older version
will throw away the install data and version tag from profiles.ini but leave
installs.ini alone. On startup if the version tag is gone from profiles.ini then
we reload the install data from installs.ini and put it back into profiles.ini.

At some point in the future where we don't care about supporting older versions
of Firefox we can just drop installs.ini entirely.

A lot of the changes here involve moving to loading profiles.ini into an
in-memory ini, keeping it up to date and flushing it to disk. This means that we
no longer throw away any information in the ini file that this version does not
understand allowing the possibility of adding new data to this file in the
future.

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

--HG--
extra : rebase_source : d00edf1ceb200a73a60bb1a90afabcdf95b01acf
extra : intermediate-source : e1c9790cd3bee060da99ffe37026721e36bc46c3
extra : source : d4feb17faf013134f5eac8b5e19b714c56410973
2019-03-27 14:41:04 -07:00
Haik Aftandilian
35ea11e89d Bug 1525086 - Part 4 - Cache the result of nsMacUtilsImpl::GetAppPath r=Alex_Gaynor
Cache the result of nsMacUtilsImpl::GetAppPath() to avoid doing I/O on repeated calls.

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

--HG--
extra : moz-landing-system : lando
2019-03-28 02:25:54 +00:00
Noemi Erli
daf2da3779 Backed out changeset 8d043fdfac71 (bug 1527704) for build bustages in nsToolkitProfileService.cpp CLOSED TREE 2019-03-27 23:36:21 +02:00
Dave Townsend
37390f734b Bug 1527704: Store install information in profiles.ini and use installs.ini as a backup in case an earlier Firefox throws it away. r=froydnj
Originally we stored the new information about installation defaults in
installs.ini since older versions of Firefox would throw away any new data in
profiles.ini any time they made changes to the profiles. That does however mean
we have to load two files on startup.

This changes things so that we save all the data in profiles.ini as well as a
version tag and still save the install data into installs.ini. An older version
will throw away the install data and version tag from profiles.ini but leave
installs.ini alone. On startup if the version tag is gone from profiles.ini then
we reload the install data from installs.ini and put it back into profiles.ini.

At some point in the future where we don't care about supporting older versions
of Firefox we can just drop installs.ini entirely.

A lot of the changes here involve moving to loading profiles.ini into an
in-memory ini, keeping it up to date and flushing it to disk. This means that we
no longer throw away any information in the ini file that this version does not
understand allowing the possibility of adding new data to this file in the
future.

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

--HG--
extra : moz-landing-system : lando
2019-03-27 20:51:38 +00:00
Cosmin Sabou
ef5fea1c75 Merge mozilla-central to mozilla-inbound. 2019-03-27 07:00:56 +02:00
Cosmin Sabou
3c71fa6b4d Backed out changeset 084974858a7b (bug 1527704) for xpcshell failures on test_remove.js.
--HG--
extra : rebase_source : e6067e8aef9c5ffb7438e33ac75963a76a3d4d21
2019-03-27 02:11:22 +02:00
Mats Palmgren
9e5f85edc2 Bug 1538618 - [css-pseudo] implement animation support for ::marker pseudos. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D25003

--HG--
extra : rebase_source : 999373f16c816cdd0dd64b1cc3f9f3f30bb12003
extra : amend_source : 829c0fc25afc55d50b70aebc1f3b9f0e8f06c458
2019-03-26 05:48:26 +01:00
Dave Townsend
72aea9cb20 Bug 1527704: Store install information in profiles.ini and use installs.ini as a backup in case an earlier Firefox throws it away. r=froydnj
Originally we stored the new information about installation defaults in
installs.ini since older versions of Firefox would throw away any new data in
profiles.ini any time they made changes to the profiles. That does however mean
we have to load two files on startup.

This changes things so that we save all the data in profiles.ini as well as a
version tag and still save the install data into installs.ini. An older version
will throw away the install data and version tag from profiles.ini but leave
installs.ini alone. On startup if the version tag is gone from profiles.ini then
we reload the install data from installs.ini and put it back into profiles.ini.

At some point in the future where we don't care about supporting older versions
of Firefox we can just drop installs.ini entirely.

A lot of the changes here involve moving to loading profiles.ini into an
in-memory ini, keeping it up to date and flushing it to disk. This means that we
no longer throw away any information in the ini file that this version does not
understand allowing the possibility of adding new data to this file in the
future.

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

--HG--
extra : moz-landing-system : lando
2019-03-26 21:29:47 +00:00
Emilio Cobos Álvarez
a77188cb74 Bug 1536045 - Turn a comment into a non-doc comment. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D24947

--HG--
extra : moz-landing-system : lando
2019-03-26 20:17:51 +00:00
Cosmin Sabou
78fc71e3c3 Backed out changeset 7fa7d6e6dedc (bug 1442778) for devtools failures on browser_webconsole_check_stubs_console_api.js CLOSED TREE 2019-03-26 20:27:55 +02:00
Eden Chuang
5e4df764d9 Bug 1442778 - Add "chromeContext" parameter to console API and console service messages. r=smaug
1. Adding a new attribute chromeContext in ConsoleEvent
2. Adding a new boolean attribute isFromChromeContext in nsIConsoleMessage
3. Sending IsFromChromeContext to the parent process

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

--HG--
extra : moz-landing-system : lando
2019-03-26 15:18:20 +00:00
shindli
cfc1229145 Backed out changeset 1c16d4ce9107 (bug 1527704) for build bustages in builds/worker/workspace/build/src/toolkit/profile/nsToolkitProfileService.cpp CLOSED TREE 2019-03-26 03:16:51 +02:00
Nika Layzell
d853d5bd7f Bug 1513350 - Add a Display impl to nsresult, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D24754

--HG--
extra : moz-landing-system : lando
2019-03-25 19:48:22 +00:00
Dave Townsend
ca3a12dacd Bug 1527704: Store install information in profiles.ini and use installs.ini as a backup in case an earlier Firefox throws it away. r=froydnj
Originally we stored the new information about installation defaults in
installs.ini since older versions of Firefox would throw away any new data in
profiles.ini any time they made changes to the profiles. That does however mean
we have to load two files on startup.

This changes things so that we save all the data in profiles.ini as well as a
version tag and still save the install data into installs.ini. An older version
will throw away the install data and version tag from profiles.ini but leave
installs.ini alone. On startup if the version tag is gone from profiles.ini then
we reload the install data from installs.ini and put it back into profiles.ini.

At some point in the future where we don't care about supporting older versions
of Firefox we can just drop installs.ini entirely.

A lot of the changes here involve moving to loading profiles.ini into an
in-memory ini, keeping it up to date and flushing it to disk. This means that we
no longer throw away any information in the ini file that this version does not
understand allowing the possibility of adding new data to this file in the
future.

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

--HG--
extra : moz-landing-system : lando
2019-03-26 00:16:59 +00:00
Kirk Steuber
a7dfa5cde2 Bug 1535377 - Allow the xpcom_method Rust macro to be used without importing ensure_param r=myk,froydnj
This is done by incorporating the ensure_param macro into the implementation of the xpcom_method macro

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

--HG--
extra : moz-landing-system : lando
2019-03-25 18:56:17 +00:00
arthur.iakab
35c8a01713 Merge mozilla-central to autoland 2019-03-25 17:54:29 +02:00
Boris Zbarsky
e1cc009c49 Bug 1536737. Give OwningNonNull an operator* to make it play nicer with the MOZ_CAN_RUN_SCRIPT static analysis. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D24161

--HG--
extra : moz-landing-system : lando
2019-03-25 15:17:29 +00:00
Lina Cambridge
1ffcc4917b Bug 1482608 - Convert null pointers passed to xpcom_methods into Options. r=myk,nika
Differential Revision: https://phabricator.services.mozilla.com/D20075

--HG--
extra : moz-landing-system : lando
2019-03-25 04:49:36 +00:00
Lina Cambridge
35f0c7a7f9 Bug 1482608 - Add owning thread pointer holders for Rust code. r=nika,myk
This commit adds `ThreadPtr{Handle, Holder}` to wrap an `XpCom` object
with thread-safe refcounting. These are analagous to
`nsMainThreadPtr{Handle, Holder}`, but can hold references to
objects from any thread, not just the main thread.

`ThreadPtrHolder` is similar to `ThreadBoundRefPtr`. However, it's
not possible to clone a `ThreadBoundRefPtr`, so it can't be shared
among tasks. This is fine for objects that are only used once, like
callbacks. However, `ThreadBoundRefPtr` doesn't work well for loggers
or event emitters, which might need to be called multiple times on
the owning thread.

Unlike a `ThreadBoundRefPtr`, it's allowed and expected to
clone and drop a `ThreadPtrHolder` on other threads. Internally,
the holder keeps an atomic refcount, and releases the wrapped object
on the owning thread once the count reaches zero.

This commit also changes `TaskRunnable` to support dispatching from
threads other than the main thread.

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

--HG--
extra : moz-landing-system : lando
2019-03-25 04:49:24 +00:00
Lina Cambridge
3e894ac30e Bug 1482608 - Add basic Rust bindings for mozStorage. r=nika,asuth,mak
This commit wraps just enough of the mozStorage API to support the
bookmarks mirror. It's not complete: for example, there's no way
to open, clone, or close a connection, because the mirror handles
that from JS. The wrapper also omits shutdown blocking and retrying on
`SQLITE_BUSY`.

This commit also changes the behavior of sync and async mozStorage
connections. Async (`mozIStorageAsyncConnection`) methods may be called
from any thread on any connection. Sync (`mozIStorageConnection`)
methods may be called from any thread on a sync connection, and from
background threads on an async connection. All connections now QI
to `mozIStorageConnection`, but attempting to call a sync method on
an async connection from the main thread throws.

Finally, this commit exposes an `OpenedConnection::unsafeRawConnection`
getter in Sqlite.jsm, for JS code to access the underlying connection.

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

--HG--
extra : moz-landing-system : lando
2019-03-25 04:49:18 +00:00
Nika Layzell
e71ae1642c Bug 1535486 - Handle the element type correctly with rust XPCOM types, r=mccr8
Before the Array<T> type, the calltype argument could be in, out, or inout,
however with Array<T> the element type was added.

When I added Array<T>, I changed the checks in files which check calltype !=
'in' to instead check 'out' in calltype, such that element would act more like
in in most cases (not adding the outparam *).

However, I never made that change for rust code, as it didn't support Array<T>
at the time. When I turned on Array<T> support for rust code, I forgot to go
through and change the conditions, which lead to this bug.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 21:32:59 +00:00
Doug Thayer
b172543596 Bug 1441308 - Core renderroot splitting changes r=kats,sotaro
This is a large patch that contains all of the core changes for
renderroot splitting.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 18:28:42 +00:00
Ciure Andrei
3de853018a Backed out 7 changesets (bug 1441308)for causing webrender build bustages CLOSED TREE
Backed out changeset 1764701d11d1 (bug 1441308)
Backed out changeset 32f7793dfd1a (bug 1441308)
Backed out changeset d8b4d6ec9b40 (bug 1441308)
Backed out changeset e2f83e4816dd (bug 1441308)
Backed out changeset baee8ada680f (bug 1441308)
Backed out changeset c09a51622e98 (bug 1441308)
Backed out changeset 737807563dd5 (bug 1441308)
2019-03-22 10:52:44 +02:00
Doug Thayer
5b3a0454a4 Bug 1441308 - Core renderroot splitting changes r=kats,sotaro
This is a large patch that contains all of the core changes for
renderroot splitting.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 03:15:14 +00:00
Nicholas Nethercote
a955ca9592 Bug 1535226 - Remove uses of XP_WIN32 in Gecko. r=glandium
The definitions can't be entirely removed yet because NSS still needs them.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 01:28:50 +00:00
Boris Zbarsky
081fa29a04 Bug 1536719. Fix handling of member method calls in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
The old code for member method calls did the following:

 1) Find the member method calls.
 2) Look at their "this" expression.
 3) If the "this" is an operator call, check for any of the arguments of the
    operator call being invalid.
 4) Otherwise (if not an operator call) check for the "this" value being
    invalid.

This wasn't right, because the "is invalid" check checks the type and only
considers refcounted things.  So if the code looked something like
"foo[i]->call_method()", we would look at the types of "foo" and "i" and
determine that none of those are refcounted types so there is nothing invalid
here (since "foo" is some sort of array type and "i" is an integer).  The new
setup just checks whether the "this" value is invalid, which does the type
check on the "this" value itself; in the "foo[i]->call_method()" case on
"foo[i]".  We then adjust the exclusions in InvalidArg to consider operator->
on known-live things valid, to allow the thing that we were really trying to
accomplish with the "check for an operator call" bits:
"stackRefPtr->some_method()".

The test coverage being added for the made-up TArray type is meant to catch
things like the geolocation issue that was being hidden by the buggy behavior.
I'm not using nsTArray itself because some header included by nsTArray.h
tries to define operator new/delete bits inline and that triggers warnings that
then cause a clang-plugin test failure, because they're unexpected.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 11:48:33 +00:00
Boris Zbarsky
640cb8470a Bug 1536336. Change MOZ_CAN_RUN_SCRIPT analysis to allow const members of "this" in addition to stack refptrs. r=andi
"this" is guaranteed to stay alive as long as other MOZ_CAN_RUN_SCRIPT
conditions hold, and its const members can't change value and drop
their refs.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 11:47:22 +00:00
Brindusan Cristian
044c3936c7 Backed out 6 changesets (bug 1536736, bug 1536336, bug 1536719, bug 1536825, bug 1537537, bug 1536724) for build bustages at TestCanRunScript. CLOSED TREE
Backed out changeset f754116e738e (bug 1537537)
Backed out changeset f9df48cfea43 (bug 1536736)
Backed out changeset 7a9888e700cf (bug 1536825)
Backed out changeset e2551303c5cf (bug 1536724)
Backed out changeset f497ce3b7419 (bug 1536719)
Backed out changeset fd59264c47c1 (bug 1536336)
2019-03-21 07:33:33 +02:00
Boris Zbarsky
14f6385d4b Bug 1536719. Fix handling of member method calls in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
The old code for member method calls did the following:

 1) Find the member method calls.
 2) Look at their "this" expression.
 3) If the "this" is an operator call, check for any of the arguments of the
    operator call being invalid.
 4) Otherwise (if not an operator call) check for the "this" value being
    invalid.

This wasn't right, because the "is invalid" check checks the type and only
considers refcounted things.  So if the code looked something like
"foo[i]->call_method()", we would look at the types of "foo" and "i" and
determine that none of those are refcounted types so there is nothing invalid
here (since "foo" is some sort of array type and "i" is an integer).  The new
setup just checks whether the "this" value is invalid, which does the type
check on the "this" value itself; in the "foo[i]->call_method()" case on
"foo[i]".  We then adjust the exclusions in InvalidArg to consider operator->
on known-live things valid, to allow the thing that we were really trying to
accomplish with the "check for an operator call" bits:
"stackRefPtr->some_method()".

The test coverage being added for the made-up TArray type is meant to catch
things like the geolocation issue that was being hidden by the buggy behavior.
I'm not using nsTArray itself because some header included by nsTArray.h
tries to define operator new/delete bits inline and that triggers warnings that
then cause a clang-plugin test failure, because they're unexpected.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 18:08:16 +00:00
Boris Zbarsky
fd9223d7ac Bug 1536336. Change MOZ_CAN_RUN_SCRIPT analysis to allow const members of "this" in addition to stack refptrs. r=andi
"this" is guaranteed to stay alive as long as other MOZ_CAN_RUN_SCRIPT
conditions hold, and its const members can't change value and drop
their refs.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 04:19:24 +00:00
Boris Zbarsky
10d7ccf23e Bug 1535384 part 5. Eliminate MOZ_CAN_RUN_SCRIPT_BOUNDARY for mutation callbacks. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D23776

--HG--
extra : moz-landing-system : lando
2019-03-19 15:14:11 +00:00
Oana Pop Rus
b01d230f27 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-03-25 12:04:50 +02:00
Mats Palmgren
53f517142f Bug 205202 part 1 - [css-lists][css-pseudo] Add support for the ::marker pseudo element on list items. Alias :-moz-list-bullet/number to that in the parser. r=emilio 2019-03-24 23:13:53 +01:00
Mats Palmgren
c750eaac07 Bug 288704 part 2 - [css-lists] Implement display:list-item counters using a built-in 'list-item' CSS counter. r=emilio 2019-03-24 23:13:52 +01:00
Dave Townsend
2f0f64f3fb Bug 1529879: Block changing the profile list when another process has changed it. r=froydnj,Gijs,flod
On startup we record the size and modified time of the profile lists. If
changed we refuse to flush any new changes to disk. Also adds a getter to check
if they've changed so the UI can do something sensible.

All attempts to flush are now checked for success. In some cases in early
startup the failure mode isn't great, we just quit startup. The assumption
though is that it's extremely unlikely that the files will have changed on disk
in the time between when they are read and when profile selection occurs, likely
less than a second later.

The profile reset flow is changed to only delete the old profile and flush once
all the migration has completed, so if something fails the user gets back to
their old profile.

In testing I ended up having to fix bug 1522584 so background file deletions on
a background thread are safer.

I haven't implemented any UI tests right now since making modifications to the
profiles means modifying the actual user's profiles which I'm not keen to do.
See bug 1539868.

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

--HG--
extra : rebase_source : b9fb01c5f2faaf7d534800b700bb02b8c88af023
extra : source : ad5ac4d5c8f7240809a205be2960924813f1e705
2019-03-05 12:51:44 -08:00
Emilio Cobos Álvarez
bdf43f53c2 Bug 1536689 - Make AssertValidDependentString asserts more fatal. r=bholley
We should catch these issues ASAP. This NS_ASSERTION also bit me in the past.

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

--HG--
extra : moz-landing-system : lando
2019-03-20 23:13:14 +00:00
Boris Zbarsky
5539520106 Bug 1535124 part 3. Add MOZ_CAN_RUN_SCRIPT annotations to geolocation code as needed. r=jdm
Differential Revision: https://phabricator.services.mozilla.com/D23521

--HG--
extra : moz-landing-system : lando
2019-03-20 18:05:09 +00:00
Mark Goodwin
50887394d6 Bug 1429796 Cleanup storage in CertBlocklist to allow easy addition of new types of pair (e.g. whitelist entries) r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D17668

--HG--
extra : moz-landing-system : lando
2019-03-20 17:00:47 +00:00
Andreea Pavel
c3cd918c5c Backed out 2 changesets (bug 1429796) for failing xperf on a CLOSED TREE
Backed out changeset b0d08863f7a5 (bug 1429796)
Backed out changeset 1bd54f8dfd9e (bug 1429796)
2019-03-20 00:03:49 +02:00
Honza Bambas
6bf4c529b1 Bug 1536129 - Fix !MOZ_CALLSTACK_DISABLED blocking resource acquisition checking, r=erahm
Differential Revision: https://phabricator.services.mozilla.com/D23882

--HG--
extra : moz-landing-system : lando
2019-03-19 17:12:42 +00:00
Mark Goodwin
59e0c373c3 Bug 1429796 Cleanup storage in CertBlocklist to allow easy addition of new types of pair (e.g. whitelist entries) r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D17668

--HG--
extra : moz-landing-system : lando
2019-03-19 17:48:04 +00:00
Honza Bambas
87dbb69b5b Bug 1535361 - Let stream transport service idle with 5 threads instead of only one to not create/kill threads in quick bursts; add option to thread pool to shorten the idle timeout progressively with number of idle thread to save memory, r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D23845

--HG--
extra : moz-landing-system : lando
2019-03-19 14:35:12 +00:00
Valentin Gosu
87e9bbff49 Bug 1532253 - Add NS_NewURIOnAnyThread r=baku
Differential Revision: https://phabricator.services.mozilla.com/D22137

--HG--
extra : moz-landing-system : lando
2019-03-19 15:11:31 +00:00
Alex Gaynor
177fb00eba Bug 1375863 - fold MOZ_CONTENT_SANDBOX and MOZ_GMP_SANDBOX into MOZ_SANDBOX; r=jld,firefox-build-system-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D22975

--HG--
extra : moz-landing-system : lando
2019-03-18 22:31:59 +00:00
Gabriele Svelto
01a0514d6f Bug 1529556 - Increase the low-memory detection thresholds by 50% r=njn
After analyzing crash ping data we've established that the current low-memory
detection threshold is too low, there are still a fair number of crashes
happening above it. A 50% increase to 384 MiB should be just about right in
the light of recent telemetry data.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 23:57:17 +00:00
ffxbld
6008843d84 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2019-03-18 11:01:13 +00:00
Csoregi Natalia
db0b4a6acd Merge mozilla-central to autoland. CLOSED TREE 2019-03-16 12:25:06 +02:00
Chris Peterson
3f655a7340 Bug 1534878 - xpcom: Rename NS_InitXPCOM2() to NS_InitXPCOM(). r=froydnj
--HG--
extra : rebase_source : 6e7a46cf49f78e46e12d1e7fc76aba6f0c377be0
2019-03-14 23:38:09 -07:00
Andrea Marchesini
42688a705f Bug 1535525 - Rename TrackingDummyChannel to ClassifierDummyChannel, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D23616

--HG--
rename : netwerk/protocol/http/TrackingDummyChannel.cpp => netwerk/protocol/http/ClassifierDummyChannel.cpp
rename : netwerk/protocol/http/TrackingDummyChannel.h => netwerk/protocol/http/ClassifierDummyChannel.h
rename : netwerk/protocol/http/TrackingDummyChannelChild.cpp => netwerk/protocol/http/ClassifierDummyChannelChild.cpp
rename : netwerk/protocol/http/TrackingDummyChannelChild.h => netwerk/protocol/http/ClassifierDummyChannelChild.h
rename : netwerk/protocol/http/TrackingDummyChannelParent.cpp => netwerk/protocol/http/ClassifierDummyChannelParent.cpp
rename : netwerk/protocol/http/TrackingDummyChannelParent.h => netwerk/protocol/http/ClassifierDummyChannelParent.h
rename : netwerk/protocol/http/PTrackingDummyChannel.ipdl => netwerk/protocol/http/PClassifierDummyChannel.ipdl
extra : moz-landing-system : lando
2019-03-15 18:55:10 +00:00
Sylvestre Ledru
4aa92e3091 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D22514
2019-03-13 10:19:06 +01:00
David Major
e5773183d6 Bug 1528074 - Remove MSVC warning flags that clang-cl doesn't understand r=chmanchester
Per the previous patch, clang-cl only understands five MSVC-style warning flags: 7219c7e9af/clang/include/clang/Driver/CLCompatOptions.td (L188-L197)

This patch removes the flags that clang-cl doesn't understand.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 20:19:08 +00:00
Chris Pearce
de686d23c1 Bug 1530245 - Launch sandbox from new remote sandbox broker process. r=jld,bobowen
Depends on D22051

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

--HG--
extra : moz-landing-system : lando
2019-03-13 09:24:52 +00:00
Boris Zbarsky
358e378b63 Bug 1505029. Teach our static analysis about nsCOMPtr<nsISupports> being a strong ref. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D23021

--HG--
extra : moz-landing-system : lando
2019-03-12 21:04:07 +00:00
Boris Zbarsky
30c26603e0 Bug 1533617 part 3. Add a [can_run_script] xpidl annotation. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D22837

--HG--
extra : moz-landing-system : lando
2019-03-11 15:16:57 +00:00
Chris Peterson
e05a724277 Bug 1534878 - xpcom: Remove unused function NS_InitXPCOM(). r=froydnj
NS_InitXPCOM() is currently not called in Gecko. It has been a one-line wrapper around NS_InitXPCOM2() since the year 2000 (bug 46320), presumably to maintain ABI compatibility for third-party users of XPCOM. We no longer need to worry about XPCOM ABI compatibility.

https://searchfox.org/mozilla-central/commit/cddb62593d786e0ff12b25037c74b01cb1a802e5

clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

xpcom/build/XPCOMInit.cpp:187:1 [-Wmissing-prototypes] no previous prototype for function 'NS_InitXPCOM'

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

--HG--
extra : rebase_source : 0ad5580e2978a8d5141bd6a9623c5af7359c78ca
extra : source : a9e4205868dbb847c01980051a56e99ad24a8ac1
2019-02-24 16:48:33 -08:00
Chris Peterson
d16e0fbd74 Bug 1534878 - xpcom: Re-enable NonASCII16 UTF-16 string tests. r=hsivonen
The NonASCII16 test function was removed in bug 1402247 but the NonASCII16_helper() function was not:

https://hg.mozilla.org/mozilla-central/rev/4ef0f163fdeb

xpcom/tests/gtest/TestUTF.cpp:119:6 [-Wmissing-prototypes] no previous prototype for function 'NonASCII16_helper'

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

--HG--
extra : rebase_source : c53118479acc6ea866dafb04617bfb2706dddb2b
extra : source : de3a70ccef6c09d0d317c7b4b5c1f8a2f93d78c7
2019-02-24 21:45:15 -08:00
Chris Peterson
e9d64cd221 Bug 1534878 - xpcom: #include headers for global functions' declarations. r=erahm
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called). The .cpp files defining these functions did not include the headers with the corresponding function prototypes used by other compilation units. Including a header file in its corresponding .cpp file can help catch mismatched declarations and definitions.

xpcom/components/nsCategoryManager.cpp:637:6 [-Wmissing-prototypes] no previous prototype for function 'NS_CreateServicesFromCategory'
xpcom/io/nsPipe3.cpp:1824:10 [-Wmissing-prototypes] no previous prototype for function 'nsPipeConstructor'
xpcom/io/nsStringStream.cpp:475:10 [-Wmissing-prototypes] no previous prototype for function 'nsStringInputStreamConstructor'
xpcom/threads/ThreadDelay.cpp:18:6 [-Wmissing-prototypes] no previous prototype for function 'DelayForChaosMode'

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

--HG--
extra : rebase_source : a2085a090394a5d3f5c319258b782a5d9f217751
extra : source : 18c3e569ff15987eb200c62eaa9f4943ff08cb25
2019-03-07 23:32:54 -08:00
Chris Peterson
d5e552f528 Bug 1534878 - xpcom: Make some global functions static. r=erahm
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

xpcom/base/Logging.cpp:85:13 [-Wmissing-prototypes] no previous prototype for function 'ToLogStr'
xpcom/base/Logging.cpp:132:13 [-Wmissing-prototypes] no previous prototype for function 'ExpandPIDMarker'
xpcom/base/LogModulePrefWatcher.cpp:37:6 [-Wmissing-prototypes] no previous prototype for function 'ResetExistingPrefs'
xpcom/base/LogModulePrefWatcher.cpp:109:6 [-Wmissing-prototypes] no previous prototype for function 'LoadExistingPrefs'
xpcom/base/nsCycleCollector.cpp:212:6 [-Wmissing-prototypes] no previous prototype for function 'SuspectUsingNurseryPurpleBuffer'
xpcom/components/nsComponentManager.cpp:421:31 [-Wmissing-prototypes] no previous prototype for function 'begin'
xpcom/components/nsComponentManager.cpp:427:31 [-Wmissing-prototypes] no previous prototype for function 'end'
xpcom/ds/Dafsa.cpp:23:6 [-Wmissing-prototypes] no previous prototype for function 'GetNextOffset'
xpcom/ds/Dafsa.cpp:55:6 [-Wmissing-prototypes] no previous prototype for function 'IsEOL'
xpcom/ds/Dafsa.cpp:62:6 [-Wmissing-prototypes] no previous prototype for function 'IsMatch'
xpcom/ds/Dafsa.cpp:70:6 [-Wmissing-prototypes] no previous prototype for function 'IsEndCharMatch'
xpcom/ds/Dafsa.cpp:78:6 [-Wmissing-prototypes] no previous prototype for function 'GetReturnValue'
xpcom/ds/Dafsa.cpp:91:5 [-Wmissing-prototypes] no previous prototype for function 'LookupString'
xpcom/io/CocoaFileUtils.mm:195:13 [-Wmissing-prototypes] no previous prototype for function 'GetQuarantinePropKey'
xpcom/io/CocoaFileUtils.mm:203:24 [-Wmissing-prototypes] no previous prototype for function 'CreateQuarantineDictionary'
xpcom/rust/gtest/bench-collections/Bench.cpp:65:11 [-Wmissing-prototypes] no previous prototype for function 'MyRand'
xpcom/rust/gtest/bench-collections/Bench.cpp:85:6 [-Wmissing-prototypes] no previous prototype for function 'Bench_Cpp_unordered_set'
xpcom/rust/gtest/bench-collections/Bench.cpp:125:6 [-Wmissing-prototypes] no previous prototype for function 'Bench_Cpp_PLDHashTable'
xpcom/rust/gtest/bench-collections/Bench.cpp:166:6 [-Wmissing-prototypes] no previous prototype for function 'Bench_Cpp_MozHashSet'
xpcom/tests/gtest/TestAtoms.cpp:114:6 [-Wmissing-prototypes] no previous prototype for function 'isStaticAtom'
xpcom/tests/gtest/TestCallTemplates.cpp:72:6 [-Wmissing-prototypes] no previous prototype for function 'JustTestingCompilation'
xpcom/tests/gtest/TestCOMPtr.cpp:87:10 [-Wmissing-prototypes] no previous prototype for function 'CreateIFoo'
xpcom/tests/gtest/TestCOMPtr.cpp:98:6 [-Wmissing-prototypes] no previous prototype for function 'set_a_IFoo'
xpcom/tests/gtest/TestCOMPtr.cpp:105:16 [-Wmissing-prototypes] no previous prototype for function 'return_a_IFoo'
xpcom/tests/gtest/TestCOMPtr.cpp:164:10 [-Wmissing-prototypes] no previous prototype for function 'CreateIBar'
xpcom/tests/gtest/TestCOMPtr.cpp:175:6 [-Wmissing-prototypes] no previous prototype for function 'AnIFooPtrPtrContext'
xpcom/tests/gtest/TestCOMPtr.cpp:177:6 [-Wmissing-prototypes] no previous prototype for function 'AVoidPtrPtrContext'
xpcom/tests/gtest/TestCOMPtr.cpp:179:6 [-Wmissing-prototypes] no previous prototype for function 'AnISupportsPtrPtrContext'
xpcom/tests/gtest/TestCOMPtr.cpp:263:6 [-Wmissing-prototypes] no previous prototype for function 'Comparison'
xpcom/tests/gtest/TestCOMPtr.cpp:298:6 [-Wmissing-prototypes] no previous prototype for function 'DontAddRef'
xpcom/tests/gtest/TestCRT.cpp:17:5 [-Wmissing-prototypes] no previous prototype for function 'sign'
xpcom/tests/gtest/TestDeadlockDetector.cpp:62:6 [-Wmissing-prototypes] no previous prototype for function 'DisableCrashReporter'
xpcom/tests/gtest/TestDeadlockDetector.cpp:74:5 [-Wmissing-prototypes] no previous prototype for function 'Sanity_Child'
xpcom/tests/gtest/TestDeadlockDetector.cpp:95:5 [-Wmissing-prototypes] no previous prototype for function 'Sanity2_Child'
xpcom/tests/gtest/TestDeadlockDetector.cpp:159:5 [-Wmissing-prototypes] no previous prototype for function 'Sanity4_Child'
xpcom/tests/gtest/TestDeadlockDetector.cpp:182:5 [-Wmissing-prototypes] no previous prototype for function 'Sanity5_Child'
xpcom/tests/gtest/TestDeadlockDetector.cpp:303:5 [-Wmissing-prototypes] no previous prototype for function 'ContentionNoDeadlock_Child'
xpcom/tests/gtest/TestHashtables.cpp:88:6 [-Wmissing-prototypes] no previous prototype for function 'testTHashtable'
xpcom/tests/gtest/TestHashtables.cpp:205:10 [-Wmissing-prototypes] no previous prototype for function 'CreateIFoo'
xpcom/tests/gtest/TestMoveString.cpp:25:6 [-Wmissing-prototypes] no previous prototype for function 'SetAsOwned'
xpcom/tests/gtest/TestMoveString.cpp:34:6 [-Wmissing-prototypes] no previous prototype for function 'ExpectTruncated'
xpcom/tests/gtest/TestMoveString.cpp:40:6 [-Wmissing-prototypes] no previous prototype for function 'ExpectNew'
xpcom/tests/gtest/TestMruCache.cpp:52:11 [-Wmissing-prototypes] no previous prototype for function 'MakeStringKey'
xpcom/tests/gtest/TestMultiplexInputStream.cpp:106:34 [-Wmissing-prototypes] no previous prototype for function 'CreateStreamHelper'
xpcom/tests/gtest/TestNonBlockingAsyncInputStream.cpp:62:10 [-Wmissing-prototypes] no previous prototype for function 'ReadSegmentsFunction'
xpcom/tests/gtest/TestNsDeque.cpp:240:6 [-Wmissing-prototypes] no previous prototype for function 'CheckIfQueueEmpty'
xpcom/tests/gtest/TestNsRefPtr.cpp:105:10 [-Wmissing-prototypes] no previous prototype for function 'CreateFoo'
xpcom/tests/gtest/TestNsRefPtr.cpp:116:6 [-Wmissing-prototypes] no previous prototype for function 'set_a_Foo'
xpcom/tests/gtest/TestNsRefPtr.cpp:123:13 [-Wmissing-prototypes] no previous prototype for function 'return_a_Foo'
xpcom/tests/gtest/TestNsRefPtr.cpp:391:6 [-Wmissing-prototypes] no previous prototype for function 'AnFooPtrPtrContext'
xpcom/tests/gtest/TestNsRefPtr.cpp:392:6 [-Wmissing-prototypes] no previous prototype for function 'AVoidPtrPtrContext'
xpcom/tests/gtest/TestPLDHash.cpp:33:6 [-Wmissing-prototypes] no previous prototype for function 'TestCrashyOperation'
xpcom/tests/gtest/TestPipes.cpp:98:10 [-Wmissing-prototypes] no previous prototype for function 'TestPipe'
xpcom/tests/gtest/TestPipes.cpp:212:10 [-Wmissing-prototypes] no previous prototype for function 'TestShortWrites'
xpcom/tests/gtest/TestPipes.cpp:354:6 [-Wmissing-prototypes] no previous prototype for function 'RunTests'
xpcom/tests/gtest/TestPLDHash.cpp:90:6 [-Wmissing-prototypes] no previous prototype for function 'InitCapacityOk_InitialLengthTooBig'
xpcom/tests/gtest/TestPLDHash.cpp:95:6 [-Wmissing-prototypes] no previous prototype for function 'InitCapacityOk_InitialEntryStoreTooBig'
xpcom/tests/gtest/TestPLDHash.cpp:102:6 [-Wmissing-prototypes] no previous prototype for function 'InitCapacityOk_EntrySizeTooBig'
xpcom/tests/gtest/TestSlicedInputStream.cpp:111:20 [-Wmissing-prototypes] no previous prototype for function 'CreateSeekableStreams'
xpcom/tests/gtest/TestSlicedInputStream.cpp:125:20 [-Wmissing-prototypes] no previous prototype for function 'CreateNonSeekableStreams'
xpcom/tests/gtest/TestStrings.cpp:471:6 [-Wmissing-prototypes] no previous prototype for function 'test_assign_helper'
xpcom/tests/gtest/TestTArray.cpp:60:22 [-Wmissing-prototypes] no previous prototype for function 'DummyArray'
xpcom/tests/gtest/TestTArray.cpp:72:22 [-Wmissing-prototypes] no previous prototype for function 'FakeHugeArray'
xpcom/tests/gtest/TestThrottledEventQueue.cpp:96:6 [-Wmissing-prototypes] no previous prototype for function 'Enqueue'
xpcom/threads/BlockingResourceBase.cpp:86:6 [-Wmissing-prototypes] no previous prototype for function 'PrintCycle'
xpcom/threads/CPUUsageWatcher.cpp:41:10 [-Wmissing-prototypes] no previous prototype for function 'GetMicroseconds'
xpcom/threads/CPUUsageWatcher.cpp:46:10 [-Wmissing-prototypes] no previous prototype for function 'GetMicroseconds'
xpcom/threads/CPUUsageWatcher.cpp:51:40 [-Wmissing-prototypes] no previous prototype for function 'GetProcessCPUStats'
xpcom/threads/CPUUsageWatcher.cpp:80:40 [-Wmissing-prototypes] no previous prototype for function 'GetGlobalCPUStats'
xpcom/threads/nsTimerImpl.cpp:196:21 [-Wmissing-prototypes] no previous prototype for function 'GetTimerFiringsLog'

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

--HG--
extra : rebase_source : e03df033209e0a08fc263603e78bc16a09467f15
extra : source : 3beec9fbfdedf346fff85309029e7805717958ac
2019-02-24 17:35:59 -08:00
Noemi Erli
f02b516553 Backed out changeset e1c9790cd3be (bug 1527704) for failures in test_refresh_firefox.py 2019-03-15 19:32:35 +02:00
Dave Townsend
51fba1a33b Bug 1527704: Store install information in profiles.ini and use installs.ini as a backup in case an earlier Firefox throws it away. r=froydnj
Originally we stored the new information about installation defaults in
installs.ini since older versions of Firefox would throw away any new data in
profiles.ini any time they made changes to the profiles. That does however mean
we have to load two files on startup.

This changes things so that we save all the data in profiles.ini as well as a
version tag and still save the install data into installs.ini. An older version
will throw away the install data and version tag from profiles.ini but leave
installs.ini alone. On startup if the version tag is gone from profiles.ini then
we reload the install data from installs.ini and put it back into profiles.ini.

At some point in the future where we don't care about supporting older versions
of Firefox we can just drop installs.ini entirely.

A lot of the changes here involve moving to loading profiles.ini into an
in-memory ini, keeping it up to date and flushing it to disk. This means that we
no longer throw away any information in the ini file that this version does not
understand allowing the possibility of adding new data to this file in the
future.

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

--HG--
extra : rebase_source : 9264bfebc7b0781ee903ef2772686d4cf920d1c9
extra : source : d4feb17faf013134f5eac8b5e19b714c56410973
2019-03-06 12:07:55 -08:00
Noemi Erli
7cc924ed4b Backed out changeset d4feb17faf01 (bug 1527704) for linting failure in test_missing_profilesini.js 2019-03-15 18:16:18 +02:00
Dave Townsend
f2f6b9894f Bug 1527704: Store install information in profiles.ini and use installs.ini as a backup in case an earlier Firefox throws it away. r=froydnj
Originally we stored the new information about installation defaults in
installs.ini since older versions of Firefox would throw away any new data in
profiles.ini any time they made changes to the profiles. That does however mean
we have to load two files on startup.

This changes things so that we save all the data in profiles.ini as well as a
version tag and still save the install data into installs.ini. An older version
will throw away the install data and version tag from profiles.ini but leave
installs.ini alone. On startup if the version tag is gone from profiles.ini then
we reload the install data from installs.ini and put it back into profiles.ini.

At some point in the future where we don't care about supporting older versions
of Firefox we can just drop installs.ini entirely.

A lot of the changes here involve moving to loading profiles.ini into an
in-memory ini, keeping it up to date and flushing it to disk. This means that we
no longer throw away any information in the ini file that this version does not
understand allowing the possibility of adding new data to this file in the
future.

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

--HG--
extra : rebase_source : d097342b0c26fb92e5236e83035b87bb7da84321
2019-03-06 12:07:55 -08:00
Nathan Froyd
8596aa45d7 Bug 1529596 - part 3 - avoid directory creation in the common case; r=aklotz
This change sets up nsLocalFileWin to mirror the behavior of
nsLocalFileUnix, which is all-around more reasonable than the behavior
nsLocalFileWin had before.  We also, in passing, fix up some unnecessary
error-handling code at the end of Create().

Depends on D22360

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

--HG--
extra : moz-landing-system : lando
2019-03-07 20:44:00 +00:00
Nathan Froyd
bf00e79a1e Bug 1529596 - part 2 - pull out code for creating files/directories; r=aklotz
We eventually want to make the common path just attempt file creation,
and only fall back to creating all the ancestor directories if the
initial attempt failed.  To do that in a reasonable way, we'll need
re-usable code for the creation code, which is what this patch creates.

Depends on D22359

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

--HG--
extra : moz-landing-system : lando
2019-03-07 20:43:04 +00:00
Nathan Froyd
0844bf4b49 Bug 1529596 - part 1 - pull out common NS_ERROR_FILE_ACCESS_DENIED code; r=aklotz
This condition logically belongs before we try creating anything.

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

--HG--
extra : moz-landing-system : lando
2019-03-07 20:40:58 +00:00
Florian Quèze
f80db303bd Bug 1533775 - PoisonIOInterposerWin should report the filename when opening non-existant files, r=aklotz.
Differential Revision: https://phabricator.services.mozilla.com/D22722

--HG--
extra : moz-landing-system : lando
2019-03-08 17:15:21 +00:00
Florian Quèze
7d2f09a8e3 Bug 1533531 - Make NSPRIOInterposer report filenames, r=aklotz.
Differential Revision: https://phabricator.services.mozilla.com/D22585

--HG--
extra : moz-landing-system : lando
2019-03-08 12:28:12 +00:00
Eric Rahm
be4b24fd5d Bug 1533521 - Avoid modifying the static empty header size field. r=mccr8
Add a check that this array isn't using the static empty header before updating the size field.

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

--HG--
extra : moz-landing-system : lando
2019-03-07 23:09:58 +00:00
Masatoshi Kimura
762db04b40 Bug 1533344 - Stop reading Universal CRT forwarder DLLs ahead on Windows 10. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D22487

--HG--
extra : moz-landing-system : lando
2019-03-07 22:14:35 +00:00
Brian Hackett
8017dbf59f Bug 1497299 - Avoid destroying nsHashPropertyBag when recording/replaying, r=mccr8.
Differential Revision: https://phabricator.services.mozilla.com/D22561

--HG--
extra : moz-landing-system : lando
2019-03-07 21:46:49 +00:00
Coroiu Cristina
24aacfe9a4 Merge inbound to mozilla-central a=merge 2019-03-07 06:34:11 +02:00
Yaron Tausky
43054fe975 Bug 1516277 - Add local execution mode to nsThread r=janv,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D21241

--HG--
extra : moz-landing-system : lando
2019-03-06 16:26:07 +00:00
David Major
dc3f107c67 Bug 1528071 - Re-unify some source files that had been de-unified for MSVC. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D22015

--HG--
extra : moz-landing-system : lando
2019-03-05 06:38:49 +00:00