Commit graph

4971 commits

Author SHA1 Message Date
Ryan Hunt
084c9b6f4c Allocate TextureReadLock at TextureClient creation and drop file handles immediately after. (bug 1416726, r=aosmond)
This changes the lifecycle and API for TextureReadLock to fix file descriptor exhaustion
crashes. These changes are partially superficial and mostly align the API of TextureReadLocks
with their actual usage.

The changes are:

1. Create the TextureReadLock in the TextureClient constructor so it's available before IPC creation
    a. This is superficial as EnableReadLock was always called before IPC creation
2. Send the ReadLockDescriptor in the PTextureConstructor message and close the file handle
3. Receive the ReadLockDescriptor in TextureHost and close the file handle
4. Send a boolean flag in layer transactions if the texture is read locked instead of a descriptor
5. Use a boolean flag in TextureHost to determine if the ReadLock must be unlocked instead of a nullptr

I believe that we can remove the InitReadLocks code from LayerTransaction as that was added to
prevent file descriptor limits in IPDL messages and is no longer needed with this change. But
that is a non-essential change and this patch is already big enough.

MozReview-Commit-ID: DzHujrOQejH

--HG--
extra : rebase_source : 3bdd7c9bc8edfdc386faad8a9e59ad7dc18ed91d
2018-03-12 08:10:13 -05:00
Stephen A Pohl
b495992a03 Bug 1423261: Submit IPC protocol names in shutdown crash reports in a way that Socorro is able to display. r=jimm 2018-03-12 11:11:44 -04:00
Bogdan Tara
e3282a1fb3 Merge inbound to mozilla-central. a=merge 2018-03-07 12:03:48 +02:00
Jim Chen
5c88095f46 Bug 1442255 - 7. Switch the order of fd arguments; r=jchen
Switch the order of the IPC FD argument and the crash FD argument in
e10s calls, because the IPC FD is the primary FD, and the crash FD
should be grouped with the crash annotation FD.

MozReview-Commit-ID: CAVyYAIIBPm

--HG--
extra : rebase_source : 596f590443f727d1a79582202eed122f79ae85cf
2018-03-06 13:52:50 -05:00
Dorel Luca
2157d8d21d Merge mozilla-central to mozilla-inbound 2018-03-06 23:59:05 +02:00
Dorel Luca
9eb35ef453 Merge mozilla-inbound to mozilla-central. a=merge 2018-03-06 23:54:12 +02:00
Stephen A Pohl
54c0a8cff6 Bug 1362303: Avoid crashes when dragging on macOS due to failed allocations of large shmem segments. r=glandium 2018-03-06 13:21:54 -05:00
Honza Bambas
8aaa7351b0 Bug 1438935 - Serialize selected LoadInfo properties from HTTPChannelParent to HTTPChannelChild through OnStartRequest and Redirect1Begin, r=asuth
--HG--
extra : rebase_source : 6d93112fbd0bcd9562094a05c70cb02e0c3bb4b9
2018-03-06 08:07:00 +02:00
Dorel Luca
e43399c28e Merge mozilla-central to autoland 2018-03-06 23:58:12 +02:00
Csoregi Natalia
0ad2abb8e9 Backed out changeset 7aef35642e5f (bug 1436156) for failing ipc/chromium/src/base/id_map.h:60. CLOSED TREE 2018-03-06 13:50:36 +02:00
Christoph Diehl
bb37ad9aba Bug 1436156 CHECK() in Chromium IPC code should be fatal when not fuzzing. r=jld 2018-03-06 00:26:06 +01:00
Cosmin Sabou
ed1b2a8736 Backed out 4 changesets (bug 1437167) for build bustages on nsUpdateDriver.cpp and WindowsMessageLoop.cpp on a CLOSED TREE.
Backed out changeset b98740e7c639 (bug 1437167)
Backed out changeset 4476e8f51fa6 (bug 1437167)
Backed out changeset c79dc40faa41 (bug 1437167)
Backed out changeset b608d2dcbb86 (bug 1437167)
2018-03-06 00:09:46 +02:00
Nika Layzell
7d5a04f0fb Bug 1437167 - Part 4: Spell CVStatus correctly on a CLOSED TREE, a=bustage
MozReview-Commit-ID: I4t8OtmxjDa
2018-03-05 16:47:29 -05:00
Nika Layzell
801a4a8d1a Bug 1437167 - Part 3: Fix some platform-specific consumers of the Monitor::Wait APIs on a CLOSED TREE, a=bustage
MozReview-Commit-ID: FymGvwEtZRk
2018-03-05 16:31:18 -05:00
James Teh
a26d4b939e Bug 1434822 part 2: mscom: Add a function to disconnect all remote clients associated with a given target. r=aklotz
Because Interceptors disable COM garbage collection to improve performance, they never receive Release calls from remote clients.
If the object can be shut down while clients still hold a reference, this function can be used to force COM to disconnect all remote connections (using CoDisconnectObject) and thus release the associated references to the Interceptor, its target and any objects associated with the HandlerProvider.
A HandlerProvider::DisconnectHandlerRemotes method also had to be added to allow HandlerProviders to disconnect clients for their own objects.

MozReview-Commit-ID: JaxEkOtrP1M

--HG--
extra : rebase_source : bc7a4ab79458eaaddcef8df74ff4d6f685fbfdce
extra : histedit_source : 087f17f09a0c0e1c8e3b5f6d9690f331c15f0b95
2018-02-19 16:08:57 +10:00
James Teh
a6bf63dc6e Bug 1442523: mscom::Interceptor: Don't dispatch QI calls to the main thread while creating a marshaler. r=aklotz
COM queries for special interfaces such as IFastRundown when creating a marshaler.
We don't want these being dispatched to the main thread, since this would cause a deadlock on mStdMarshalMutex if the main thread is also querying for IMarshal.

MozReview-Commit-ID: EQcN8Zhewjh

--HG--
extra : rebase_source : 40c39edce139f66fdb43b539b1d6fb0acb00d755
2018-03-06 17:08:15 +10:00
Nika Layzell
bfb9a07251 Bug 1440771 - Part 1: Add a ParamTraits impl for nsCOMPtr<nsIInputStream>, r=baku
MozReview-Commit-ID: dfZJH1cWnW
2018-03-05 16:00:05 -05:00
Nika Layzell
e282bb0ee4 Bug 1440511 - Part 12: Remove the now-unused per-actor pickling code, r=froydnj
MozReview-Commit-ID: 5ASQu4ly0od
2018-03-05 16:00:04 -05:00
Nika Layzell
b8ffcd26b0 Bug 1440511 - Part 11: Switch to calling IPDLParamTraits directly when pickling and unpickling messages, r=froydnj
MozReview-Commit-ID: 1t4oIp5JWcU
2018-03-05 16:00:04 -05:00
Nika Layzell
4cfd1b17fa Bug 1440511 - Part 10: Implement IPDLParamTraits for IPDL generated types, r=froydnj
MozReview-Commit-ID: 2ljPFJKM9Fg
2018-03-05 16:00:04 -05:00
Nika Layzell
68cee68ee8 Bug 1440511 - Part 9: Correct serialization and deserialization of arrays of Shmem objects, r=froydnj
MozReview-Commit-ID: KEFduw2Pn8r
2018-03-05 16:00:03 -05:00
Nika Layzell
ea516e7fbb Bug 1440511 - Part 7: Include c++ includes in ipdlh generated .cpp files, r=froydnj
This is important as these includes are often used to define ParamTraits
implementations which are needed to serialize struct members and
parameters. The place where the code which uses these implementations
will be moving from the protocol where they are used to the file where
the structs are defined, which means we need to includes these files
there.

MozReview-Commit-ID: H1wqgyv5mel
2018-03-05 16:00:03 -05:00
Nika Layzell
50056699b1 Bug 1440511 - Part 6: Support passing the fq flag to _cxxBareType in more places, r=froydnj
MozReview-Commit-ID: K1lkVr6KdZo
2018-03-05 16:00:02 -05:00
Nika Layzell
acff444d08 Bug 1440511 - Part 5: Move all serialization logic into an IPDLParamTraits impl for Shmem, r=froydnj
MozReview-Commit-ID: DsrfSVPgoo1
2018-03-05 16:00:02 -05:00
Nika Layzell
896117c019 Bug 1440511 - Part 4: Add an IPDLParamTraits implementation for FileDescriptor, r=froydnj
MozReview-Commit-ID: R1CiT5IvAi
2018-03-05 16:00:02 -05:00
Nika Layzell
36059eb187 Bug 1440511 - Part 3: Add IPDLParamTraits which supports passing in an actor when {un,}pickling, r=froydnj
MozReview-Commit-ID: JTsQJ292A09
2018-03-05 16:00:01 -05:00
Nika Layzell
351767a407 Bug 1440511 - Part 2: Support specializations in _splitMethodDefn, r=froydnj
MozReview-Commit-ID: JFYgyUr4I4G
2018-03-05 16:00:01 -05:00
Nika Layzell
262be91f75 Bug 1437167 - Part 1: Stop using PRIntervalTime as the argument to CondVar::Wait and Monitor::Wait, r=mstange, r=froydnj
MozReview-Commit-ID: BN18I8Q6c7S
2018-03-05 16:00:00 -05:00
Nathan Froyd
062f6d980e Bug 1443236 - remove static init and shutdown nsRegion routines; r=kats
These routines are no-ops; let's get rid of them.
2018-03-05 14:06:50 -05:00
James Teh
16bde7a2f5 Bug 1434822 part 1: Disable COM ping functionality for our parent process instead of for external processes. r=aklotz
MozReview-Commit-ID: 2ayfzIxh8Lo

--HG--
extra : rebase_source : 59e0d9d4a15bd6b714600558bebda4e2add08201
extra : histedit_source : d068b57d9706d4b0cc3e32e7e575f441f3e23a9c
2018-02-01 15:42:24 +10:00
Valentin Gosu
34872b6d20 Bug 1441688 - Remove nsIIPCSerializableURI.Deserialize r=mayhemer
MozReview-Commit-ID: 8gwX3vSKWNX

--HG--
extra : rebase_source : a2c21a7e66aa8be3c2e345ca64feea967b380491
2018-03-05 04:14:44 +01:00
James Teh
4e593a1e00 Bug 1440257: Ensure that mscom::MainThreadInvoker gets cleaned up very soon after it finishes executing. r=aklotz
MainThreadInvoker queues both a Gecko runnable and an APC to the main thread to deal with different ways in which the main thread can block.
However, the main thread doesn't check for APCs very often any more.
This means that the APC's reference to the SyncRunnable doesn't get cleaned up for a long time, thus leaking memory.
To work around this, we:
1. Queue an APC wich does the actual work.
2. Post a Gecko runnable (which always runs).
If the APC hasn't run, the Gecko runnable runs it.
Otherwise, it does nothing.

MozReview-Commit-ID: L0P4rMBnlaZ

--HG--
extra : rebase_source : 3af871cf59e94818963e15881217218ef2b42b6c
2018-02-23 10:44:07 +10:00
Bogdan Tara
3c059709aa Backed out changeset c055d7b57071 (bug 1434822) for causing 1442523. a=backout 2018-03-02 11:27:55 +02:00
Bogdan Tara
3cadf78110 Backed out changeset 54526e7c7b6c (bug 1434822) for causing 1442523. a=backout 2018-03-02 11:27:35 +02:00
Sebastian Hengst
118e03a936 merge mozilla-central to mozilla-inbound 2018-03-01 20:32:20 +02:00
James Teh
6fc08ce5ed Bug 1434822 part 2: mscom: Add a function to disconnect all remote clients associated with a given target. r=aklotz
Because Interceptors disable COM garbage collection to improve performance, they never receive Release calls from remote clients.
If the object can be shut down while clients still hold a reference, this function can be used to force COM to disconnect all remote connections (using CoDisconnectObject) and thus release the associated references to the Interceptor, its target and any objects associated with the HandlerProvider.
A HandlerProvider::DisconnectHandlerRemotes method also had to be added to allow HandlerProviders to disconnect clients for their own objects.

MozReview-Commit-ID: JaxEkOtrP1M

--HG--
extra : rebase_source : 2262af8fc3cb1aec8d9c8fc2762f3d61e188cb37
2018-02-19 16:08:57 +10:00
James Teh
5f27445039 Bug 1434822 part 1: Disable COM ping functionality for our parent process instead of for external processes. r=aklotz
MozReview-Commit-ID: 2ayfzIxh8Lo

--HG--
extra : rebase_source : 2ff14410152493c5bcaa4f0e34aa0a67d66a78ed
2018-02-01 15:42:24 +10:00
Gurzau Raul
185d1fcf42 Backed out 7 changesets (bug 1442255) for failing c1 tests on mochitest/test_browserElement_inproc_PurgeHistory.html
Backed out changeset 208c4c42f641 (bug 1442255)
Backed out changeset 6a794e14fceb (bug 1442255)
Backed out changeset 62d1c57c37b4 (bug 1442255)
Backed out changeset 5d0f72867f53 (bug 1442255)
Backed out changeset c3305648ad30 (bug 1442255)
Backed out changeset 08f906f3a0c8 (bug 1442255)
Backed out changeset d7a43e59a1b4 (bug 1442255)
2018-03-06 17:08:57 +02:00
Jim Chen
9b7b3f4565 Bug 1442255 - 7. Switch the order of fd arguments; r=jchen
Switch the order of the IPC FD argument and the crash FD argument in
e10s calls, because the IPC FD is the primary FD, and the crash FD
should be grouped with the crash annotation FD.

MozReview-Commit-ID: CAVyYAIIBPm

--HG--
extra : rebase_source : 02bf7337fa9a6d1194809c224acb4a2690fd87a3
2018-03-06 00:04:56 -05:00
Stephen A Pohl
562c70ab11 Bug 1423261: Diagnostics patch to obtain more info about the IPC channel state when we expect it to be closed. r=jimm 2018-03-01 11:41:34 -05:00
Csoregi Natalia
166bce1123 Merge inbound to mozilla-central. a=merge 2018-02-24 12:13:21 +02:00
Chris Peterson
4c4286f348 Bug 1330529 - Part 3: Protect DLL loads in wmain instead of waiting until PluginProcessChild::Init. r=jimm
Removing #define XRE_DONT_PROTECT_DLL_LOAD from plugin-container.cpp and xpcshell.cpp allows the #included nsWindowsWMain.cpp to protect DLL loads much earlier in the plugin process startup.

MozReview-Commit-ID: HbgyfvljvFs

--HG--
extra : rebase_source : dccdabb2e5bee4472d5aef9400a58cb0e397c112
extra : histedit_source : da248fc6fbdf96f30979f3a0396aefcf4bfcd5d9
2018-02-02 22:53:34 -08:00
James Teh
b51649c9a4 Bug 1440564: mscom::StructToStream: Free the buffer when destroying the instance. r=aklotz
You'd think that MesHandleFree would free the buffer, since it was created by RPC, but it doesn't.
Therefore, we must free it ourselves using midl_user_free.

MozReview-Commit-ID: 9KzWTngFEEq

--HG--
extra : rebase_source : 6bee3903f619ec1cb1569ebf1df2ddef9da6b901
2018-02-23 20:00:30 +10:00
Alex Gaynor
85d35b3366 Bug 1440034 - fixed reporting of annotations at the time of crashes on GeckoView; r=rbarker
MozReview-Commit-ID: 8thtJe0QmcE

--HG--
extra : rebase_source : 68f2380d1846f4f648ac4146f2d5385ac4923522
2018-02-21 14:37:22 -05:00
Csoregi Natalia
7ec5af04a0 Backed out changeset 3237c9532102 (bug 1440034) for breaking Android builds. CLOSED TREE 2018-02-22 05:37:53 +02:00
Alex Gaynor
bef576f813 Bug 1440034 - fixed reporting of annotations at the time of crashes on GeckoView; r=rbarker
MozReview-Commit-ID: 8thtJe0QmcE

--HG--
extra : rebase_source : 27d0875e412b8dde435af132768fda98bb24ed35
2018-02-21 14:37:22 -05:00
Gurzau Raul
2a77281049 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-02-21 19:30:44 +02:00
Christoph Kerschbaumer
a6c1ffb498 Bug 1434357: Exempt Web Extensions from insecure redirects to data: URIs. r=kmag,mayhemer 2018-02-18 19:52:52 +01:00
Jonathan Kingston
8afc412494 Bug 1435733 - Upgrade mixed display content pref. r=baku,ckerschb,francois,mayhemer
MozReview-Commit-ID: ETIgVF3zhRu

--HG--
extra : rebase_source : e4c59f50584158f4b31527347b10424b56692fa1
2018-02-05 15:37:27 +00:00
Christoph Kerschbaumer
494f074b53 Bug 1432358: Allow certain top-level pages to be agnostic to CSP. r=smaug
--HG--
extra : source : 27527f95cccca4927d4fee56b0dab9af11c5733f
extra : intermediate-source : 2fa11c525da3d0c7ca58a593241c1902f2849528
2018-02-01 14:07:01 +01:00
Chris Peterson
fe5cd3d5d9 Bug 1436263 - Part 3: Remove virtual from final virtual function declarations. r=froydnj
MozReview-Commit-ID: 8pjYjEvQF42

--HG--
extra : rebase_source : 5eb0bea2ef5f06a811b4f3daf57ce8720f12dd07
2018-02-08 21:22:43 -08:00
Chris Peterson
d09123f248 Bug 1436263 - Part 1: Replace final override virtual function specifiers with just final. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D

--HG--
extra : rebase_source : 94831c1e13a840dd2ea0600f64bcf70c2bf938d9
extra : source : cf9283bf1b0bca3a6311c98e227329d451f80ecb
2018-02-05 22:46:57 -08:00
Alex Gaynor
07d1a1f5aa Bug 1438209 - fixed Windows builds with the crashreporter disabled; r=ted
Do not pass command line arguments to child processes that they won't read.

MozReview-Commit-ID: soj1hRygNw

--HG--
extra : rebase_source : 13501d2f12a0be910323465f589386e7c956e41a
2018-02-15 10:07:12 -05:00
Kyle Machulis
e1ca4ed006 Bug 1201590 - WebMIDI Parent/PBackground implementation; r=baku,padenot
MozReview-Commit-ID: Juk7azaIViw

--HG--
extra : rebase_source : 1daa19e385ba04fcfba1eb284442a64ae691a271
2017-11-15 11:19:59 -08:00
Kyle Machulis
584f1f8b59 Bug 1201590 - WebMIDI Content implementation; r=baku,padenot
MozReview-Commit-ID: HmiGV9iqAeM

--HG--
extra : rebase_source : 27ae72adf4997bdc8c0810515165434b08f1d390
2017-11-15 11:18:58 -08:00
Kyle Machulis
a95162b2c3 Bug 1201590 - WebMIDI IPDL files; r=baku
MozReview-Commit-ID: 1b4FSasfZJ4

--HG--
extra : rebase_source : 5a400499ef8100d1454b7dbf3ebc63780dac453a
2017-11-14 22:16:18 -08:00
James Teh
752cda7b26 Bug 1433046: mscom::Interceptor: Don't destroy an aggregated interceptor before releasing its interface. r=aklotz
When an object is aggregated, doing a QI to anything other than IUnknown on the inner object AddRefs the outer object.
Thus, before releasing our reference to the inner IUnknown (and thus destroying it), we *must* release any references to interfaces queried from it.
Otherwise, any pointers to interfaces of the inner object would be invalidated.

MozReview-Commit-ID: KXsA8Sagx6G

--HG--
extra : rebase_source : f1dca4ee71f2ed49c8ba19c12862f2b4f9881fca
2018-02-08 15:53:20 +10:00
James Teh
d557fc0b1d Bug 1431404: Remove some accessibility related diagnostic crashes on Nightly. r=aklotz
These conditions are rare and do indicate a problem which breaks accessibility.
However, we aren't getting any closer to diagnosing these as a result of these crashes, so they cause user pain without any gain to us.

MozReview-Commit-ID: D9U4et3Bg7d

--HG--
extra : rebase_source : a81263a0ef97a8ed87129d15ef30ded3005e740c
2018-02-09 15:28:13 +10:00
Andreea Pavel
3d2179915d Backed out changeset e68169412c0b (bug 1431404) for failing mochitest browser chrome at browser/base/content/test/general/browser_datachoices_notification.js on a CLOSED TREE 2018-02-13 03:28:44 +02:00
James Teh
3f381e616f Bug 1431404: Remove some accessibility related diagnostic crashes on Nightly. r=aklotz
These conditions are rare and do indicate a problem which breaks accessibility.
However, we aren't getting any closer to diagnosing these as a result of these crashes, so they cause user pain without any gain to us.

MozReview-Commit-ID: D9U4et3Bg7d

--HG--
extra : rebase_source : a81263a0ef97a8ed87129d15ef30ded3005e740c
2018-02-09 15:28:13 +10:00
Alex Gaynor
de20b74dc4 Bug 1407693 - Part 2 - when a child process crashes, write extra annotation data to a pre-opened file descriptor instead of creating a new file; r=gsvelto,rbarker
This removes the need for the content process to have permissions to create new
files on macOS, allowing more aggressive sandboxing.

MozReview-Commit-ID: 8agL5jwxDSL

--HG--
extra : rebase_source : 17ebcef3e9d24f3d4e7515e3fae95e65cef76a79
2017-11-27 14:37:34 -06:00
Alex Gaynor
0d04153faf Bug 1407693 - Part 1 - Expose method for sharing a HANDLE to a child process in the sandboxing API; r=bobowen
MozReview-Commit-ID: 3LBCzPS6Mzg

--HG--
extra : rebase_source : 7e1ea157eeea5810ad21d781e93b7046aebf2bd6
2017-11-27 14:34:48 -06:00
Andreea Pavel
93f2f80c9d Backed out 2 changesets (bug 1407693) for windows mingw32 bustages at /builds/worker/workspace/build/src/ipc/glue/GeckoChildProcessHost.cpp:1032 on a CLOSED TREE
Backed out changeset 9c3346021c21 (bug 1407693)
Backed out changeset f18e1e557cf6 (bug 1407693)
2018-02-07 21:42:47 +02:00
Alex Gaynor
c190a71600 Bug 1407693 - Part 2 - when a child process crashes, write extra annotation data to a pre-opened file descriptor instead of creating a new file; r=gsvelto
This removes the need for the content process to have permissions to create new
files on macOS, allowing more aggressive sandboxing.

MozReview-Commit-ID: 8agL5jwxDSL

--HG--
extra : rebase_source : 215577cd5ced3994a4c3345377b3feedea07e886
2017-11-27 14:37:34 -06:00
Alex Gaynor
fe879d087a Bug 1407693 - Part 1 - Expose method for sharing a HANDLE to a child process in the sandboxing API; r=bobowen
MozReview-Commit-ID: 3LBCzPS6Mzg

--HG--
extra : rebase_source : 70b31bde82bfd3721b75cc9dc7171b2c1efc5f9f
2017-11-27 14:34:48 -06:00
Dorel Luca
112cc1ff6b Backed out 3 changesets (bug 1430857) for breaking tests on Windows Code Coverage builds a=backout
Backed out changeset a992887a6060 (bug 1430857)
Backed out changeset cc9b0ac5f66b (bug 1430857)
Backed out changeset 4bdd6d82f993 (bug 1430857)
2018-02-07 15:02:58 +02:00
Aaron Klotz
200eb77750 Bug 1430857: Part 1 - Refactor DllServices to make it possible to obtain them from anywhere in Gecko; r=jimm
MozReview-Commit-ID: GfWata0eCc5

--HG--
extra : rebase_source : 3a5b4a6f0412311f0b9080a2b3b3a31e45d15b75
2018-01-30 14:23:10 -07:00
Andrew McCreight
5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

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

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

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

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Andrea Marchesini
8cdf705535 Bug 1435174 - Remove the renaming 'using namespace workers', r=bkelly 2018-02-05 19:55:07 +01:00
Nika Layzell
785a14270e Bug 1431867 - Part 2: Add move constructors and assignment operators to IPDL unions, r=mccr8
MozReview-Commit-ID: IQVODEfMGi9
2018-02-01 11:30:50 -05:00
Nika Layzell
a1e4513e2a Bug 1431867 - Part 1: Remove some unnecessary complexity from generated IPDL structs, r=mccr8
MozReview-Commit-ID: HvX4ZF8t9Eg
2018-02-01 11:30:49 -05:00
Gian-Carlo Pascutto
d959ea23b4 Bug 1386404 - Don't try to fetch the content process tmpdir if sandboxing is disabled. r=jld
MozReview-Commit-ID: zaWPy4rt1J

--HG--
extra : rebase_source : 2b4fcf210c986ae9c0f74619df3290e7cd9fbfd0
extra : histedit_source : e2ef0fa68e9a0d544e11ac4475cab4e6e97f74fc
2018-01-09 17:51:55 +01:00
Gian-Carlo Pascutto
7fd8a36d1c Bug 1386404 - Intercept access to /tmp and rewrite to content process tempdir. r=jld
MozReview-Commit-ID: 2h9hw6opYof

--HG--
extra : rebase_source : 73c677be84d62ed958d07b0aca0947dd0e9448c7
extra : histedit_source : 499d483f58372b7b06a36da3fdf0ea3afc12feeb
2017-10-26 17:50:49 +02:00
Gian-Carlo Pascutto
6520179659 Bug 1386404 - Enable content-process specific tmpdir on Linux. r=jld
MozReview-Commit-ID: 6Hijq0to9MG

--HG--
extra : rebase_source : 8435b8e39d9723c52b0176a7686895185136aa6e
extra : histedit_source : 50c41172788fddead6357f1d566d0e48de8c90d6
2018-01-09 16:29:40 +01:00
Noemi Erli
7df180b6ad Backed out 2 changesets (bug 1431867) for build bustages on ClientSourceOpChild.cpp:57:12 on a CLOSED TREE
Backed out changeset 4cdb114a46f9 (bug 1431867)
Backed out changeset b5a46d76193b (bug 1431867)
2018-01-31 22:15:54 +02:00
Nika Layzell
08119d282a Bug 1431867 - Part 2: Add move constructors and assignment operators to IPDL unions, r=mccr8
MozReview-Commit-ID: IQVODEfMGi9
2018-01-31 14:40:36 -05:00
Nika Layzell
c9e0af69b6 Bug 1431867 - Part 1: Remove some unnecessary complexity from generated IPDL structs, r=mccr8
MozReview-Commit-ID: HvX4ZF8t9Eg
2018-01-31 14:40:35 -05:00
Bogdan Tara
1f15df5f24 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-01-31 12:11:39 +02:00
Andrea Marchesini
26352bfee1 Bug 1432963 - Fixing workers headers - part 17 - no LIBS=[workers] in moz.build files, r=smaug 2018-01-31 08:25:30 +01:00
Andrea Marchesini
a5bed23bd8 Bug 1432963 - Fixing workers headers - part 15 - static function in a workers namespace, r=smaug 2018-01-31 08:24:30 +01:00
Andrea Marchesini
2c7c69af24 Bug 1432963 - Fixing workers headers - part 14 - WorkerPrivate without workers namespace, r=smaug 2018-01-31 08:24:08 +01:00
Andrea Marchesini
063723a1f0 Bug 1432963 - Fixing workers headers - part 13 - WorkerHolder without workers namespace, r=smaug 2018-01-31 08:23:44 +01:00
arthur.iakab
c4dd80eca3 Merge mozilla-central to autoland 2018-01-31 00:41:58 +02:00
Jim Chen
ffe5a4900b Bug 1428182 - 5. Update libevent patch for Android builds; r=froydnj
Support for accept4 and arc4random_buf depends on which set of NDK
headers we're using. accept4 is supported for API >= 21 for unified and
non-unified headers. arc4random_buf is supported for API >= 21 if using
non-unified headers, and it's always supported if using unified headers
(the unified headers provide shims for API < 21).

MozReview-Commit-ID: FY8n5jWXB1K

--HG--
rename : ipc/chromium/src/third_party/libevent/patches/android-arc4random-buf.patch => ipc/chromium/src/third_party/libevent/patches/android-api-level.patch
extra : rebase_source : 45ec28ca03ba877d9e0911bde081df7d9cb2d3d2
2018-01-30 14:08:23 -05:00
Petr Sumbera
6c6e2604c1 Bug 1434328 - process_util_linux.cc with fork_delegate should build on Solaris too r=jld 2018-01-30 08:47:26 -08:00
Gurzau Raul
c380dfe905 Merge inbound to mozilla-central. a=merge 2018-01-30 12:01:49 +02:00
Cosmin Sabou
c6a0d55423 Backed out 11 changesets (bug 1428182) for build bustages on pixman-inlines.h:29:10 on a CLOSED TREE
Backed out changeset 84c767de6202 (bug 1428182)
Backed out changeset 429433caa78c (bug 1428182)
Backed out changeset c576e9d1f68f (bug 1428182)
Backed out changeset 092662eab5eb (bug 1428182)
Backed out changeset 4dd7eaff3ab5 (bug 1428182)
Backed out changeset fbbb0745b139 (bug 1428182)
Backed out changeset 1d1278b289b7 (bug 1428182)
Backed out changeset 55891ffb3768 (bug 1428182)
Backed out changeset 4655e1b1b237 (bug 1428182)
Backed out changeset 377eada51b3c (bug 1428182)
Backed out changeset 17c0e373d921 (bug 1428182)

--HG--
rename : ipc/chromium/src/third_party/libevent/patches/android-api-level.patch => ipc/chromium/src/third_party/libevent/patches/android-arc4random-buf.patch
2018-01-30 01:22:33 +02:00
Jim Chen
dbaea867e2 Bug 1428182 - 5. Update libevent patch for Android builds; r=froydnj
Support for accept4 and arc4random_buf depends on which set of NDK
headers we're using. accept4 is supported for API >= 21 for unified and
non-unified headers. arc4random_buf is supported for API >= 21 if using
non-unified headers, and it's always supported if using unified headers
(the unified headers provide shims for API < 21).

MozReview-Commit-ID: FY8n5jWXB1K

--HG--
rename : ipc/chromium/src/third_party/libevent/patches/android-arc4random-buf.patch => ipc/chromium/src/third_party/libevent/patches/android-api-level.patch
extra : rebase_source : a8974cb1e8e71a8c951754ca9902fff28c099031
2018-01-29 17:38:13 -05:00
Aaron Klotz
1559fd3d00 Bug 1433046: Use WeakReferenceSupport::StabilizeRefCount instead of regular kung-fu death grips when aggregating; r=Jamie
This fix is completely speculative, but I have strong reason to believe that
we are having lifetime issues, and that refcount stabilization might be coming
into play.

The situation is this:

Suppose we're aggregating an object, so we pass |this| as the outer IUnknown.
The inner object might perform AddRef() and Release() on |this| during its
initialization.

But if we're in the process of creating the outer object, that refcount might
not yet have been incremented by 1, so the inner object's invocation of the
outer object's Release() could trigger a deletion.

The way around this is to temporarily bump the refcount when aggregating another
object. The key, though, is to not do this via AddRef() and Release(), but by
direct maniuplation of the refcount variable, so that we don't trigger any of
the self-deletion stuff.

MozReview-Commit-ID: 3WA2AJvb6jY

--HG--
extra : rebase_source : ab05a52760541a4ab11f1245a5ddeae938998047
2018-01-25 13:45:21 -07:00
Daniel Zielas
e80f2e7469 Bug 1427229 - Perform validation when sending an EnumSet over IPC. r=botond,froydnj
MozReview-Commit-ID: Cmugi1ldc1Z

--HG--
extra : amend_source : 88b792772ce7948172a68fda03d6d61de66347de
2018-01-21 21:23:21 +01:00
David Parks
cc15f3d517 Bug 1382251: Part 8 - Migrate some previously hooked functions to FunctionHook/Broker; r=jimm,froydnj
Moves GetWindowInfo, GetKeyState, SetCursorPos, GetSaveFileNameW and GetOpenFileNameW to the new FunctionHook and FunctionBroker systems.
2017-11-06 11:07:16 -08:00
David Parks
9a40a70447 Bug 1382251: Part 7 - Add mechanism for automatically brokering DLL functions; r=jimm
The FunctionBroker is a special kind of FunctionHook that brokers the hooked function on another process.  In the child process, it uses the FunctionBrokerChild to request that the FunctionBrokerParent run a function and return the response.  It handles most cases of parameter, return value and error marshaling on its own.  It also guarantees that requests are issued from the proper thread.
2017-11-06 10:34:47 -08:00
David Parks
93bbbac8e4 Bug 1382251: Part 6 - Start/stop new top-level brokering actors on their own threads; r=jld
The FunctionBroker actors allow the NPAPI process (child) to run methods on the main process (parent).  Both the parent and the child run dedicated threads for this task -- this is a top-level protocol.
2017-11-06 10:29:15 -08:00
Ben Kelly
e71d8db226 Bug 1430139 P3 Remove workers namespace from service worker code. r=asuth 2018-01-26 13:08:59 -08:00
Ben Kelly
0325169284 Bug 1430139 P2 Make the tree compile again after moving the code to dom/serviceworkers. r=asuth 2018-01-26 13:08:58 -08:00
Narcis Beleuzu
9279994eae Merge inbound to mozilla-central. a=merge 2018-01-24 23:56:14 +02:00
Alex Gaynor
8fed0e13dc Bug 1432811 - remove duplicative #if clauses in process spawning; r=bobowen
MozReview-Commit-ID: FcvqEBbBxcW

--HG--
extra : rebase_source : 411ae9778642bee88482fe2e423b47b6387bdbd4
2018-01-24 10:48:33 -05:00
Sebastian Hengst
78d2a3c1db Merge mozilla-central to mozilla-inbound 2018-01-24 14:24:05 +02:00
Aaron Klotz
1baadb6673 Bug 1404482: Remove crash report annotation that was being made before the crash reporter initialized; r=Jamie
MozReview-Commit-ID: 2Nn0Bzxrvd2

--HG--
extra : rebase_source : 9d967f226ec34c76bbcee00bf7632e45822da5f6
2018-01-23 12:06:58 -07:00
Aaron Klotz
37fc167ff3 Bug 1428759: Remove mutual exclusion from WeakReferenceSupport interface queries; r=Jamie
--HG--
extra : rebase_source : 1626509510d4f6018381b3f183ca40f2085f46d5
2018-01-12 14:17:18 -07:00
Ben Kelly
9225189e3a Bug 1231211 P3 Serialize LoadInfo's mClientInfo, mReservedClientInfo, and mReservedClientInfo members across IPC. r=valentin 2018-01-23 10:38:52 -05:00
Ben Kelly
8e535f8460 Bug 1231211 P2 Pass the controller ServiceWorkerDescriptor on the channel LoadInfo and back in PHttpChannel's OnStartRequest message. r=valentin 2018-01-23 10:38:52 -05:00
Ben Kelly
8d4bfc7c66 Bug 1231211 P1 Allow docshell reload state to be set on LoadInfo. r=valentin 2018-01-23 10:38:51 -05:00
Jed Davis
6cc01043ce Bug 1401062 - Create Linux child processes with clone() for namespace/chroot sandboxing. r=gcp
Namespace isolation is now handled by using clone() at process creation
time, rather than calling unshare.

pthread_atfork will no longer apply to sandboxed child processes.
The two significant uses of it in Firefox currently are to (1) make
malloc work post-fork, which we already avoid depending on in IPC and
sandboxing, and (2) block SIGPROF while forking, which is taken care of;
see SandboxFork::Fork for details.  Note that if we need pthread_atfork
in the future it could be emulated by symbol interposition.

clone() is called via glibc's wrapper, for increased compatibility vs.
invoking the syscall directly, using longjmp to recover the syscall's
fork-like semantics the same way Chromium does; see comments for details.

The chroot helper is reimplemented; the general approach is similar,
but instead of a thread it's a process cloned with CLONE_FS (so the
filesystem root is shared) from the child process before it calls
exec, so that it still holds CAP_SYS_CHROOT in the newly created user
namespace.  This does mean that it will retain a CoW copy of the
parent's address space until the child starts sandboxing, but that is a
relatively short period of time, so the memory overhead should be small
and short-lived.

The chrooting now happens *after* the seccomp-bpf policy is applied;
previously this wasn't possible because the chroot thread would have
become seccomp-restricted and unable to chroot.  This fixes a potential
race condition where a thread could try to access the filesystem after
chrooting but before having its syscalls intercepted for brokering,
causing spurious failure.  (This failure mode hasn't been observed in
practice, but we may not be looking for it.)

This adds a hidden bool pref, security.sandbox.content.force-namespace,
which unshares the user namespace (if possible) even if no sandboxing
requires it.  It defaults to true on Nightly and false otherwise, to
get test coverage; the default will change to false once we're using
namespaces by default with content.

MozReview-Commit-ID: JhCXF9EgOt6

--HG--
rename : security/sandbox/linux/LinuxCapabilities.cpp => security/sandbox/linux/launch/LinuxCapabilities.cpp
rename : security/sandbox/linux/LinuxCapabilities.h => security/sandbox/linux/launch/LinuxCapabilities.h
extra : rebase_source : f37acacd4f79b0d6df0bcb9d1d5ceb4b9c5e6371
2017-10-06 17:16:41 -06:00
Heiher
245134e169 Bug 1430745 - IPC: Fix unaligned accesses in DirReaderLinux. r=froydnj
---
 ipc/chromium/src/base/dir_reader_linux.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
2018-01-17 23:17:28 +08:00
Chris Peterson
1a33f28694 Bug 1428984 - Part 3: Remove unused inline flag. r=froydnj
inline is never set so cgen never emits inline.

MozReview-Commit-ID: BDL6BV8906t

--HG--
extra : rebase_source : aa51cda34db36ba08622d9940402cea14617c74a
2018-01-12 21:14:53 -08:00
Chris Peterson
caaf1b568c Bug 1428984 - Part 2: Remove unused never_inline flag. r=froydnj
never_inline is never set so cgen never emits MOZ_NEVER_INLINE.

MozReview-Commit-ID: HS7qw7D4lBC

--HG--
extra : rebase_source : 2eae9e3a7a0c95d94986283fabe670d5decec3c3
2018-01-12 21:12:07 -08:00
Chris Peterson
428b284e8d Bug 1428984 - Part 1: Consolidate virtual, pure, override, and static MethodDecl types into an MethodSpec enum. r=froydnj
pure or override implies virtual. static is mutually exclusive with virtual (and pure and override). Combining these types into a "method specifier" enum simplifies the code and prevents bogus states like virtual=0 and pure=1.

MozReview-Commit-ID: IFeuvbp1RIo

--HG--
extra : rebase_source : d423d168a8b3a3d60cabd0f5e58fd03c6f655baf
2018-01-09 00:10:02 -08:00
Chris Peterson
37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Mike Hommey
bb2afff5c1 Bug 1425381 - Always enable PIE on Android now that we support only >= 4.1. r=froydnj
--HG--
extra : rebase_source : c73d77ab1274b2dd54a3785a6d77c6e8dcb69f87
2018-01-11 10:42:15 +09:00
Sylvestre Ledru
eabcdd21b2 Bug 1278282 - Replace #if (MOZ_WIDGET_GTK == 3) by #ifdef MOZ_WIDGET_GTK r=lsalzman
MozReview-Commit-ID: Bo0m7n078oh

--HG--
extra : rebase_source : 1874ac3e0abca65b821b5d04a6610a5cbb63fe24
2018-01-09 11:51:07 +01:00
Kate McKinley
e97980a95e Bug 1424917 - Remove support for HSTS Priming. r=mayhemer, r=ckerschb
This patch removes support and tests for HSTS priming from the tree.
2018-01-10 11:07:00 -05:00
Margareta Eliza Balazs
3ab3149a84 Merge mozilla-central to inbound. r=merge a=merge CLOSED TREE 2018-01-09 12:16:12 +02:00
Jan Beich
0d6100b8a4 Bug 1428950 - Unbreak build on BSDs after bug 1297740. r=gcp
--HG--
extra : rebase_source : f1fd0a89d72fbe812ff706e17dff18c001fe4aef
2018-01-09 02:13:20 +00:00
Gian-Carlo Pascutto
61cf15cc85 Bug 1297740. r=jld 2018-01-08 10:07:16 +01:00
Dorel Luca
04e91897cf Backed out 11 changesets (bug 1252998) for faling browser-chrome on browser/base/content/test/sanitize/browser_sanitize-offlineData.js
Backed out changeset a9ec63c01c50 (bug 1252998)
Backed out changeset a3e5299b882a (bug 1252998)
Backed out changeset aa511b206e21 (bug 1252998)
Backed out changeset 5875848a48ab (bug 1252998)
Backed out changeset 7fd2523680d1 (bug 1252998)
Backed out changeset a45e28e573a4 (bug 1252998)
Backed out changeset 92e8cc81b417 (bug 1252998)
Backed out changeset da38d133549e (bug 1252998)
Backed out changeset 5be23a98b47c (bug 1252998)
Backed out changeset 609093736110 (bug 1252998)
Backed out changeset f4955cf6447f (bug 1252998)

--HG--
rename : browser/base/content/test/sanitize/browser_purgehistory_clears_sh.js => browser/base/content/test/general/browser_purgehistory_clears_sh.js
rename : browser/base/content/test/sanitize/browser_sanitize-passwordDisabledHosts.js => browser/base/content/test/general/browser_sanitize-passwordDisabledHosts.js
rename : browser/base/content/test/sanitize/browser_sanitize-sitepermissions.js => browser/base/content/test/general/browser_sanitize-sitepermissions.js
rename : browser/base/content/test/sanitize/browser_sanitize-timespans.js => browser/base/content/test/general/browser_sanitize-timespans.js
rename : browser/base/content/test/sanitize/browser_sanitizeDialog.js => browser/base/content/test/general/browser_sanitizeDialog.js
2018-01-08 11:00:39 +02:00
Andrea Marchesini
87828533de Bug 1252998 - StorageActivityService - part 2 - Use of StorageActivityService in LocalStorage, r=asuth 2018-01-08 08:31:35 +01:00
Andrea Marchesini
1ac04372e5 Bug 1252998 - StorageActivityService - part 1 - Introduce StorageActivityService to monitor origin activities, r=asuth 2018-01-08 08:31:34 +01:00
Chris Peterson
32cf7b1a07 Bug 1428535 - Part 3: Emit override specifiers in generated ipc/ipdl code. r=froydnj
MozReview-Commit-ID: 2mpQcRKzfCo

--HG--
extra : rebase_source : 70844a95a8dfbb9e1d3a9bd177987f32e57a22b2
extra : intermediate-source : eba2f29350c39acede276e505ef6aa7337ba7f2a
extra : source : fafaa4d1e1a4cf2da4459c55927e5bd67f870cb0
2017-10-12 00:07:35 -07:00
Mike Conley
921cb8735c Bug 1397426 - Rename TabChild's notion of "active tabs" to "visible tabs" and move logic into renderLayers. r=billm
MozReview-Commit-ID: 1bBNwew7uCk

--HG--
extra : rebase_source : 0e59b548c6c01d7feaf9f40c282ab2f55e47bab7
extra : source : 4643e46ff8d3e84d10ff178e15a1be7f734b020f
2017-11-03 11:27:29 -04:00
Daniel Zielas
12f6fe554d Bug 1425926 - Add IPC serialization support for EnumSet. r=botond
MozReview-Commit-ID: Ess2R3Rroym

--HG--
extra : rebase_source : 10698a15281b53e8f5d9db2c51156c4df3c4cfeb
extra : amend_source : 242a1f6578f7f1f0f20cdc3c0cf1565012bae6e6
2017-12-27 21:46:03 +01:00
Masatoshi Kimura
a1d349bfab Bug 1426898 - Stop including Char16.h everywhere. r=Waldo
We had to force-include Char16.h to simulate char16_t on older MSVC versions.
But it is no longer the case. We should not rebuild the world whenever we
touch this file.

MozReview-Commit-ID: 1XY7tQD8LoK

--HG--
extra : rebase_source : a08ccfc9b6a4abf90f6f8b97a42079865724c9ec
2017-12-23 00:53:12 +09:00
Andrew McCreight
0b3352e605 Bug 1426513, part 3 - Remove CPU and TimeTicks::HighResNow. r=jld
CPU is only used on Windows, for TimeTicks::HighResNow, but the latter
is not used, so remove them all.

MozReview-Commit-ID: CvV1gMrVRA5

--HG--
extra : rebase_source : 2a512e2cfbe7d734a2c806214a2a96f79cbc9f11
2017-12-20 14:06:44 -08:00
Andrew McCreight
f301d2f896 Bug 1426513, part 2 - Remove SysInfo. r=jld
MozReview-Commit-ID: AzNOH8mJqEY

--HG--
extra : rebase_source : 86c7fdc8d5c1f9e5873b2e206f854cbbfbc16a34
2017-12-20 13:51:57 -08:00
Andrew McCreight
e2c8b28f84 Bug 1426513, part 1 - Remove ProcessMetrics and ProcessFilter. r=jld
MozReview-Commit-ID: 7991I7JtkIw

--HG--
extra : rebase_source : f4b04d9b3bd1b752363aef8628133f359038c361
2017-12-20 13:43:01 -08:00
Coroiu Cristina
72aaaf526b Backed out 3 changesets (bug 1426513) for bustage at /src/base/process_util_posix.cc r=backout on a CLOSED TREE
Backed out changeset 693bb500fc25 (bug 1426513)
Backed out changeset 64021383118d (bug 1426513)
Backed out changeset 9d80a554866c (bug 1426513)
2017-12-21 20:59:02 +02:00
Andrew McCreight
7b5bcc482d Bug 1426513, part 3 - Remove CPU and TimeTicks::HighResNow. r=jld
CPU is only used on Windows, for TimeTicks::HighResNow, but the latter
is not used, so remove them all.

MozReview-Commit-ID: CvV1gMrVRA5

--HG--
extra : rebase_source : 60ddcf6ea5542f4526a23d739a2fe754219e5b9f
2017-12-20 14:06:44 -08:00
Andrew McCreight
52848c69fb Bug 1426513, part 2 - Remove SysInfo. r=jld
MozReview-Commit-ID: AzNOH8mJqEY

--HG--
extra : rebase_source : 4ccb092c7eb4aca89e913505f52c5b00484730d8
2017-12-20 13:51:57 -08:00
Andrew McCreight
e2a7d9b7b9 Bug 1426513, part 1 - Remove ProcessMetrics and ProcessFilter. r=jld
MozReview-Commit-ID: 7991I7JtkIw

--HG--
extra : rebase_source : 75e56f918a6e276b114ed8ea154f2686915ee8ac
2017-12-20 13:43:01 -08:00
Andrew McCreight
ab7fa64021 Bug 1410209, part 4 - Add names to some IPC runnables. r=kanru
This patch requires that each instance of IPC's RunnableFunction is
passed in a name, like the non-IPC RunnableFunction.

MozReview-Commit-ID: Atu1W3Rl66S

--HG--
extra : rebase_source : f932d7597a26a3f0c4246b3a95df638860d3d32d
2017-10-27 13:39:28 -07:00
Florian Quèze
032c961e0a Bug 1421992 - script-generated patch to replace do_check_* functions with their Assert.* equivalents, rs=Gijs. 2017-12-21 11:08:17 +01:00
Andrew McCreight
b01441d8e5 Bug 1426284 - Remove TransportDIB files. r=jld
PluginMessageUtils.h was bootlegging base/shared_memory.h via transport_dib.h

MozReview-Commit-ID: CPGxu2lpdj0

--HG--
extra : rebase_source : 796c747a4a125dddc2a0685f1e0d0152ac3ef74f
2017-12-19 12:40:41 -08:00
cku
07e7f9f727 Bug 1399787 - Part 9. Sandbox the PDFium process. r=bobowen,jwatt
MozReview-Commit-ID: 6ED7EPZvOMR

--HG--
extra : rebase_source : d8ddd2bb3551cf25c0f18151c4340e1f48d659ca
extra : intermediate-source : d90c5064d88a6468c1209f4a78ec7631592eec98
extra : source : 91b761e38efd28a69647c38531f5418fffee8f50
2017-10-18 20:52:45 +08:00
Sylvestre Ledru
5de63ef061 Bug 1394734 - Replace CONFIG['MSVC'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 5orfnoude7h

--HG--
extra : rebase_source : 1ed9a6b56e1d27221a07624767a7fb0e6147117f
2017-12-08 13:46:13 +01:00
Sylvestre Ledru
9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
Cosmin Sabou
79d933ec34 Backed out 22 changesets (bug 1399787) for shutdown leaks on windows 7 debug tc-M without e10s r=backout on a CLOSED TREE
Backed out changeset 463d676df5da (bug 1399787)
Backed out changeset fc9776a2605d (bug 1399787)
Backed out changeset 2e91a90dfbc3 (bug 1399787)
Backed out changeset e82ab72f71ee (bug 1399787)
Backed out changeset d7fef200e8b9 (bug 1399787)
Backed out changeset a7d70f7f3335 (bug 1399787)
Backed out changeset 2800f9d20d96 (bug 1399787)
Backed out changeset 9dfa404abf9d (bug 1399787)
Backed out changeset 09b3c172a01e (bug 1399787)
Backed out changeset f9fd3e750636 (bug 1399787)
Backed out changeset 01284c55bf8a (bug 1399787)
Backed out changeset c2ab1b454283 (bug 1399787)
Backed out changeset e7bfa51404c5 (bug 1399787)
Backed out changeset 3fd2a734f887 (bug 1399787)
Backed out changeset ef21f295db3f (bug 1399787)
Backed out changeset c186893ce0fc (bug 1399787)
Backed out changeset 323da3bddaaa (bug 1399787)
Backed out changeset 3b89f189edff (bug 1399787)
Backed out changeset a47bd86c35ee (bug 1399787)
Backed out changeset 558526301a4c (bug 1399787)
Backed out changeset baa99fb50ba9 (bug 1399787)
Backed out changeset 6d82ed0ba805 (bug 1399787)
2017-12-08 13:09:56 +02:00
Brindusan Cristian
5b9ee89503 Merge mozilla-central to autoland a=merge r=merge on a CLOSED TREE 2017-12-08 12:06:24 +02:00
Eric Rahm
07c97a5afe Bug 1423773 - Part 1: Remove usage of nsStringGlue.h. r=glandium
This removes an unnecessary level of indirection by replacing all
nsStringGlue.h instances with just nsString.h.

--HG--
extra : rebase_source : 340989240af4018f3ebfd92826ae11b0cb46d019
2017-12-06 16:52:51 -08:00
cku
d70af3d034 Bug 1399787 - Part 9. Sandbox the PDFium process. r=bobowen,jwatt
MozReview-Commit-ID: 6ED7EPZvOMR

--HG--
extra : rebase_source : 60e6d103573436d923f8b2b00c70cb2a4a7986df
extra : intermediate-source : d90c5064d88a6468c1209f4a78ec7631592eec98
extra : source : 91b761e38efd28a69647c38531f5418fffee8f50
2017-10-18 20:52:45 +08:00
Bogdan Tara
e882c9b394 Backed out 22 changesets (bug 1399787) for failing on mozmake.EXE r=backout a=backout on a CLOSED TREE
Backed out changeset 0afbd07d8219 (bug 1399787)
Backed out changeset 80c062fd58fb (bug 1399787)
Backed out changeset b1457eabd34e (bug 1399787)
Backed out changeset d875e45f591e (bug 1399787)
Backed out changeset 8f600ac930ec (bug 1399787)
Backed out changeset c478fb75f5cb (bug 1399787)
Backed out changeset c995f4e18724 (bug 1399787)
Backed out changeset 0b75ef19e695 (bug 1399787)
Backed out changeset 2382a348a6c1 (bug 1399787)
Backed out changeset 93f9a5e253d8 (bug 1399787)
Backed out changeset 5c50bbde0950 (bug 1399787)
Backed out changeset 67e530c129c7 (bug 1399787)
Backed out changeset 682c60e52749 (bug 1399787)
Backed out changeset ff1436ae1ef7 (bug 1399787)
Backed out changeset cb3ae1dc20b2 (bug 1399787)
Backed out changeset bc52b1781641 (bug 1399787)
Backed out changeset d165846cb5e1 (bug 1399787)
Backed out changeset 185368267354 (bug 1399787)
Backed out changeset c385d0f60f8a (bug 1399787)
Backed out changeset 364b5b44932b (bug 1399787)
Backed out changeset 98758e79710d (bug 1399787)
Backed out changeset d56497aa5390 (bug 1399787)
2017-12-07 19:16:08 +02:00
cku
fe99eaf1f9 Bug 1399787 - Part 9. Sandbox the PDFium process. r=bobowen,jwatt
MozReview-Commit-ID: 6ED7EPZvOMR

--HG--
extra : rebase_source : 5dbc1330a355e01a3a40e8145b35556cd27f0394
extra : intermediate-source : d90c5064d88a6468c1209f4a78ec7631592eec98
extra : source : 91b761e38efd28a69647c38531f5418fffee8f50
2017-10-18 20:52:45 +08:00
Mike Conley
053fbea1fc Backed out changeset 4643e46ff8d3 (bug 1397426)
--HG--
extra : rebase_source : 3e235d725c42300f3c8f3af51850e3c4e1aa7ddf
2017-12-06 16:03:32 -05:00
Ben Kelly
fb38b7b228 Bug 1423412 P1 Actually mark window/worker ClientSource objects controlled when loaded with a controlling service worker. r=baku r=jld 2017-12-05 20:45:22 -05:00
Narcis Beleuzu
1f7fdd5826 Merge mozilla-central to inbound. r=merge a=merge on a CLOSED TREE 2017-12-06 01:49:19 +02:00
Tim Taubert
a3256fcae8 Bug 1421616 - Have one WebAuthnManager instance per CredentialsContainer r=jcj
Summary:
We currently have a single WebAuthnManager instance per process that's shared
between all CredentialContainers. That way the nsPIDOMWindowInner parent has
to be tracked by the transaction, as multiple containers could kick off
requests simultaneously.

This patch lets us we have one WebAuthnManager instance per each
CredentialsContainer and thus each nsPIDOMWindowInner. This matches the current
U2F implementation where there is one instance per parent window too.

This somewhat simplifies the communication diagram (at least in my head), as
each U2F/WebAuthnManager instance also has their own TransactionChild/Parent
pair for IPC protocol communication. The manager and child/parent pair are
destroyed when the window is.

Reviewers: jcj

Reviewed By: jcj

Bug #: 1421616

Differential Revision: https://phabricator.services.mozilla.com/D305
2017-12-05 19:05:06 +01:00
Mark Banner
41c7322062 Bug 1421968 - Fix more instances of .getService to use Services.jsm where possible. r=mossop
MozReview-Commit-ID: 2EbsWq7VPrI

--HG--
extra : rebase_source : 4e751a74b641b99b01af0947bf2eeaafb3fe8c62
2017-11-30 12:04:16 +00:00
Tim Taubert
587ed9ddc7 Backed out changeset bb739695f566 (bug 1421616) 2017-12-05 19:24:22 +01:00
Tim Taubert
a0935f0ff1 Bug 1421616 - Have one WebAuthnManager instance per CredentialsContainer r=jcj
Summary:
We currently have a single WebAuthnManager instance per process that's shared
between all CredentialContainers. That way the nsPIDOMWindowInner parent has
to be tracked by the transaction, as multiple containers could kick off
requests simultaneously.

This patch lets us we have one WebAuthnManager instance per each
CredentialsContainer and thus each nsPIDOMWindowInner. This matches the current
U2F implementation where there is one instance per parent window too.

This somewhat simplifies the communication diagram (at least in my head), as
each U2F/WebAuthnManager instance also has their own TransactionChild/Parent
pair for IPC protocol communication. The manager and child/parent pair are
destroyed when the window is.

Reviewers: jcj

Reviewed By: jcj

Bug #: 1421616

Differential Revision: https://phabricator.services.mozilla.com/D305
2017-12-05 19:05:06 +01:00
Bogdan Tara
ebe0a1a20c Merge inbound to mozilla-central r=merge a=merge 2017-12-04 22:20:49 +02:00
Ben Kelly
73afebbc88 Bug 1420594 P1 Make ClientManagerService track active ClientManagerParent actors. r=baku 2017-12-04 09:51:32 -05:00
Dorel Luca
ba2b0cf4d1 Backed out 3 changesets (bug 1422314, bug 1420594) for failing xpcshell/test_ext_contentScripts_register.js on Android debug r=backout a=backout
Backed out changeset f5a3054a4c38 (bug 1420594)
Backed out changeset 7908b821ad3f (bug 1420594)
Backed out changeset b89daf5c23b8 (bug 1422314)
2017-12-04 15:35:07 +02:00
Aaron Klotz
3263c3ac00 Bug 1414421: Change some diagnostic asserts in mscom to stop firing on dev edition; r=Jamie
MozReview-Commit-ID: JfKevpNIiRT

--HG--
extra : rebase_source : 07b6ccd13b5ee589290b7b9e8069f9db5ceaf132
2017-11-29 14:50:17 -07:00
Ben Kelly
5bd2e38996 Bug 1420594 P1 Make ClientManagerService track active ClientManagerParent actors. r=baku 2017-12-01 14:48:11 -05:00
Gurzau Raul
0b613c3887 Merge inbound to mozilla-central r=merge a=merge 2017-12-01 12:56:06 +02:00
Tom Tung
c24bbe2dc8 Bug 1222008 - P7: Freeze the tainting if a service worker responds with a synthesize response. r=bkelly
--HG--
extra : rebase_source : ef1d3b00654e57ae7b173eb39e4a574af566c769
2017-11-03 15:37:35 +08:00
shindli
268bcd38b5 Backed out 2 changesets (bug 1420594) for leaks in browser-chrome tests r=backout on a CLOSED TREE
Backed out changeset 007fde92382e (bug 1420594)
Backed out changeset ff3ee0cc91ab (bug 1420594)
2017-11-30 18:24:52 +02:00
Ben Kelly
0031cd668f Bug 1420594 P1 Make ClientManagerService track active ClientManagerParent actors. r=baku 2017-11-30 09:52:50 -05:00
Jeff Muizelaar
fba16646be Bug 1379680. Add an ipc ByteBuf type. r=billm
This adds a ByteBuf type that can be sent by taking
ownership of its buffer instead of having to make a copy.
2017-11-29 10:11:15 -05:00
Jeff Muizelaar
07d53bd660 Bug 1379680. Add a way to append buffers to a BufferList. r=billm 2017-11-29 10:11:13 -05:00
Bob Owen
af20a22dd8 Bug 1420922: Remove orphaned TARGET_SANDBOX_EXPORTS defines. r=dmajor 2017-11-27 16:07:15 +00:00
Botond Ballo
41aac0b97c Bug 951793 - Store the overscroll behavior in ScrollMetadata and propagate it to APZ. r=mstange
MozReview-Commit-ID: J7Vkd941QxK
2017-11-25 01:29:01 +01:00
Sebastian Hengst
6d4637aebb Backed out 15 changesets (bug 951793) because it landed before the necessary servo changes. r=backout requested by emilio on a CLOSED TREE
Backed out changeset ca8c86e229df (bug 951793)
Backed out changeset 6eef6403fa71 (bug 951793)
Backed out changeset a5e529f52fb1 (bug 951793)
Backed out changeset 054e837609d0 (bug 951793)
Backed out changeset 713a3c9617ce (bug 951793)
Backed out changeset 884913aa1668 (bug 951793)
Backed out changeset c3340b84e534 (bug 951793)
Backed out changeset 50fe3c6ac486 (bug 951793)
Backed out changeset be4e22e5c257 (bug 951793)
Backed out changeset 7055bd5dfc4e (bug 951793)
Backed out changeset fa6da1e723cf (bug 951793)
Backed out changeset 386f77004d89 (bug 951793)
Backed out changeset fa82cdc01408 (bug 951793)
Backed out changeset 867d8ea5355c (bug 951793)
Backed out changeset e61ac8e48971 (bug 951793)
2017-11-25 01:01:41 +02:00
Botond Ballo
69d3063396 Bug 951793 - Store the overscroll behavior in ScrollMetadata and propagate it to APZ. r=mstange
MozReview-Commit-ID: J7Vkd941QxK

--HG--
extra : rebase_source : f9d0f664f17f4efe34a21064cbbf259642fe3caf
2017-10-18 20:13:19 -04:00
Gabriele Svelto
ef3b2f88cc Bug 1402519 - Remove MOZ_CRASHREPORTER directives from ipc; r=billm
MozReview-Commit-ID: 4mDW7cJqHDn

--HG--
extra : rebase_source : 17c51ed796733d4a512e1d6f47273318dcc26b11
2017-10-10 12:06:35 +02:00
Andrew McCreight
f69cf04a33 Bug 1419455, part 3 - Remove the unused return value for the upgrade() methods. r=kanru
Also ensure we're more consistent about having two blank lines after these methods.

MozReview-Commit-ID: 2SXXjDuMW4u

--HG--
extra : rebase_source : 05279ceab3aa32d1e577ea02ccd113180bb55792
2017-11-21 08:45:20 -08:00
Andrew McCreight
65015439d9 Bug 1419455, part 2 - Clean up standardTypedefs. r=kanru
There's already a typedef for MessageChannel, so use that instead of
Channel. Also, use IProtocol and not ProtocolBase or ChannelListener,
for simplicity.

MozReview-Commit-ID: 2zCjTpPTW4L

--HG--
extra : rebase_source : eed8d6d51a512ac85f6b4962fc12591bf81c2981
2017-11-21 08:27:32 -08:00
Andrew McCreight
1bae204066 Bug 1419455, part 1 - Inline _semsToChannelParts. r=kanru
This method is now trivial, so we can inline a few things.  This
removes the only callers of sendSems(), so remove that, too.

MozReview-Commit-ID: Bb4EF9M56ut

--HG--
extra : rebase_source : dedf31aa225361e31122362aefc76940edbf25f3
2017-11-21 08:15:51 -08:00
Dorel Luca
ad4a3ebf42 Merge mozilla-central to autoland r=merge on a CLOSED TREE 2017-12-04 15:47:39 +02:00
Dorel Luca
bea662dd30 Merge mozilla-central to autoland r=merge
--HG--
rename : layout/reftests/webcomponents/basic-insertion-point-1-ref.html => layout/reftests/webcomponents/basic-slot-5-ref.html
rename : layout/reftests/webcomponents/basic-insertion-point-1.html => layout/reftests/webcomponents/basic-slot-5.html
rename : layout/reftests/webcomponents/basic-insertion-point-2-ref.html => layout/reftests/webcomponents/basic-slot-6-ref.html
rename : layout/reftests/webcomponents/basic-insertion-point-2.html => layout/reftests/webcomponents/basic-slot-6.html
extra : rebase_source : 483a0fb85738c5459165efca8ec6bc971e31b4c2
2017-12-04 12:49:40 +02:00
Ciure Andrei
48e5c9892f Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2017-12-02 12:19:55 +02:00
Mike Conley
cacae0556b Bug 1397426 - Rename TabChild's notion of "active tabs" to "visible tabs" and move logic into renderLayers. r=billm
MozReview-Commit-ID: 1bBNwew7uCk

--HG--
extra : rebase_source : fb907f0e9f02635b122dbf67da7a7c1292427cec
2017-11-03 11:27:29 -04:00
Gurzau Raul
bbe856eaf5 Backed out 5 changesets (bug 1255485) for mochitest failures on test/mochitest/test_hangui.xul
Backed out changeset 90b7449882b6 (bug 1255485)
Backed out changeset 5672cf8d324b (bug 1255485)
Backed out changeset ed6dd4aefadb (bug 1255485)
Backed out changeset 0ba36c0feddb (bug 1255485)
Backed out changeset 51af06b6123c (bug 1255485)
2018-01-23 02:01:43 +02:00
Ted Mielczarek
e3f2c0b1a3 bug 1255485 - Remove NSDISTMODE=copy from Makefiles. r=nalexander
MozReview-Commit-ID: GJV2O6zvEx2

--HG--
extra : rebase_source : 6150647b3a2cc288444c79aeb0f79f34d7dadd0d
2017-11-22 15:30:06 -05:00
shindli
fb855aa7ba Backed out 16 changesets (bug 1402519) for conflicts during merge r=backout on a CLOSED TREE
Backed out changeset 07fcf163241a (bug 1402519)
Backed out changeset c6d2ad45d8e2 (bug 1402519)
Backed out changeset 8a3caca61294 (bug 1402519)
Backed out changeset 01425eae2c48 (bug 1402519)
Backed out changeset cf298d3815de (bug 1402519)
Backed out changeset e1964f4389cd (bug 1402519)
Backed out changeset f405337f3569 (bug 1402519)
Backed out changeset a76356fd3359 (bug 1402519)
Backed out changeset d3bb350d1c34 (bug 1402519)
Backed out changeset 9d3bfd9f932c (bug 1402519)
Backed out changeset e3dd6e5b073f (bug 1402519)
Backed out changeset e801b0c00134 (bug 1402519)
Backed out changeset 8a4139fa5dca (bug 1402519)
Backed out changeset 8d01c14ac1ca (bug 1402519)
Backed out changeset 24e0dcd01898 (bug 1402519)
Backed out changeset f8fdf450613f (bug 1402519)
2017-11-23 00:11:44 +02:00
Gabriele Svelto
f0b9eb9ff9 Bug 1402519 - Remove MOZ_CRASHREPORTER directives from ipc; r=billm
MozReview-Commit-ID: 4mDW7cJqHDn

--HG--
extra : rebase_source : a13301f4faea301cd528179790f2430171f59a48
2017-10-10 12:06:35 +02:00
Andrew McCreight
f966d52048 Bug 1417657 - Add basic test for prio(). r=bkelly
MozReview-Commit-ID: AigSKc2EKGr

--HG--
extra : rebase_source : c2580693dcacf97fb8701d28e5d20cba3508997e
2017-11-15 13:29:56 -08:00
Valentin Gosu
d2d8524673 Bug 1415205 - Add nsIURIMutator impls for all objects implementing nsIURI r=bagder
This also changes URIUtils.cpp:DeserializeURI() to use the mutator to instantiate new URIs, instead of using their default constructor.

MozReview-Commit-ID: JQOvIquuQAP

--HG--
extra : rebase_source : e146624c5ae423f7f69a738aaaafaa55dd0940d9
2017-11-20 17:11:30 +01:00
Tiberius Oros
f2f6232ff6 Merge mozilla-central to mozilla-autoland r=merge a=merge on a CLOSED TREE 2017-11-21 12:16:13 +02:00
James Teh
980e6321f7 Bug 1416986 part 1: Allow an mscom Handler to signal that it knows an interface is definitely not available. r=aklotz
If QueryHandlerInterface returns E_NOINTERFACE, the proxy will be queried for the interface.
However, the handler might know that the interface is definitely not available and could thus avoid a pointless cross-process call.
To facilitate this, the handler can now return S_FALSE to signal that the proxy should not be queried, thus immediately returning E_NOINTERFACE to the client.

MozReview-Commit-ID: 4RtBsA9BTOV

--HG--
extra : rebase_source : 4b0dcb16c469361c1944b24568ceb83fd0ac09c1
2017-11-15 09:59:44 +10:00
Nika Layzell
b4c0dcb142 Bug 1418048 - Part 3: Accept callbacks passed to async-returning SendXXX methods as rvalue references on a CLOSED TREE, a=bustage
MozReview-Commit-ID: 7M1uuWr0fMM
2017-11-20 19:11:48 -05:00
Nika Layzell
8c139d50a6 Bug 1418048 - Part 2: Pass callbacks by rvalue reference when possible, a=bustage
MozReview-Commit-ID: 4KsbRJ9AEdB
2017-11-20 18:12:21 -05:00
Nika Layzell
a7666fd8fe Bug 1418048 - Add a callback-based Send API to async returning IPDL methods, r=billm
Currently if you write an async IPDL method which has a return value, we expose
a SendXXX method which returns a MozPromise. This MozPromise can then be
->Then-ed to run code when it is resolved or rejected.

Unfortunately, using this API loses ordering guarantees which IPDL provides.
MozPromise::Then takes an event target, which the resolve runnable is dispatched
to. This means that the resolve callback's code doesn't have any ordering
guarantees relative to the processing of other IPC messages coming over the same
protocol.

This adds a new overload to SendXXX with two additional arguments, a lambda
callback which is called if the call succeeds, and a lambda callback which is
called if the call fails. These will be called in order with other IPC messages
sent over the same protocol.

MozReview-Commit-ID: FZHJJaSDoZy
2017-11-20 17:55:32 -05:00
Aaron Klotz
1476d2ed85 Bug 1406827: Do not wrap an interface with a passthru proxy unless sandboxing is enabled and >= level 3; r=jimm
MozReview-Commit-ID: Gi1ch0IQtPj
2017-11-03 16:50:17 -06:00
Jan de Mooij
793d5faa99 Bug 1417844 part 4 - Remove more JSVersion code. r=evilpie 2017-11-17 12:13:42 +01:00
Jan de Mooij
7f30bf48a7 Bug 1417844 part 2 - Remove JSVersion from CompileOptions, CompartmentBehaviors, scripts. r=evilpie 2017-11-17 12:12:39 +01:00
Mike Hommey
a1f665f7e9 Bug 1417309 - Remove the nscore.h include from basictypes.h. r=froydnj
This is a hack that was added back when the chromium ipc codebase was
imported, but that shouldn't be required anymore. The mozalloc operator
new is gotten through stl wrapping these days.
2017-11-16 08:37:34 +09:00
Andrea Marchesini
155b15b8e0 Bug 1414755 - Get rid of ContentPrincipalInfoOriginNoSuffix, r=bz, r=bkelly
This patch uses MozURL in ServiceWorkerRegistrar and in DBScheme to obtain the
origin of a URL. This is safe because the URL is always http/https/ftp.

It also changes the serialization of Principal in nsJSPrincipals in order to
pass the originNoSuffix together with the OriginAttributes and the spec.
2017-11-15 11:19:26 +01:00
Andrea Marchesini
73712f7d05 Bug 1405290 - Improve logging of workers when shutting down - part 3 - WorkerHolder with names, r=asuth 2017-11-15 07:58:38 +01:00
Aaron Klotz
9eb89cbe15 Bug 1413287: Ensure that interceptors do not marshal a handler payload unless they are the outermost marshal request; r=Jamie
MozReview-Commit-ID: 2rDreOpdwvy

--HG--
extra : rebase_source : a38a5df54aab50cecfeedf4b2f51194e868f699d
2017-10-31 14:37:00 -06:00
Jed Davis
873f611a48 Bug 1401786 - Move the Linux sandboxing parts of GeckoChildProcessHost into security/sandbox. r=gcp
MozReview-Commit-ID: JknJhF5umZc

--HG--
extra : rebase_source : 2fa246e9a8b350becc21ed5bfd69820d3a321064
2017-10-06 17:15:46 -06:00
Jed Davis
c7f8a32bf4 Bug 1401786 - Move base::LaunchApp options into a LaunchOptions struct, like upstream Chromium. r=billm
MozReview-Commit-ID: 74IXV4oGeWR

--HG--
extra : rebase_source : ef4021a60506a8fc5fa5a35e3f3fefb9dbad75d6
2017-09-08 20:35:06 -06:00
Alex Gaynor
af821e1fe3 Bug 1365257 - Further consolidate the configuration of the content sandbox; r=gcp
This patch moves handling of the "MOZ_DISABLE_CONTENT_SANDBOX" environment
variable into GetEffectiveContentSandboxLevel. It also introduces
IsContentSandboxEnabled and ports many users of GetEffectiveContentSandboxLevel
to use it.

MozReview-Commit-ID: 4CsOf89vlRB

--HG--
extra : rebase_source : b9130f522e860e6a582933799a9bac07b771139b
2017-06-01 10:38:22 -04:00
shindli
897ae925f7 Backed out 1 changesets (bug 1365257) for failing gl in \build\build\src\obj-firefox\dist\include\mozilla/ServoStyleSet.h:97 r=backout on a CLOSED TREE
Backed out changeset 00edc1ac58f9 (bug 1365257)

--HG--
extra : rebase_source : d33f3bba71d1899e0f4a5051369c240e00ea42fe
2017-11-10 19:23:58 +02:00
Sylvestre Ledru
aedb2fa4c6 Bug 1415543 - Remove some Chromium unused files (platform_file_*.cc thread_local_storage_*.cc) r=jld
MozReview-Commit-ID: FY6YZ7TqfjG

--HG--
extra : rebase_source : 21dc0e5f7c7fa50d6a5b4826a54f40314eae69a8
2017-11-07 14:54:51 +01:00
Alex Gaynor
31e67fc86a Bug 1365257 - Further consolidate the configuration of the content sandbox; r=gcp
This patch moves handling of the "MOZ_DISABLE_CONTENT_SANDBOX" environment
variable into GetEffectiveContentSandboxLevel. It also introduces
IsContentSandboxEnabled and ports many users of GetEffectiveContentSandboxLevel
to use it.

MozReview-Commit-ID: 4CsOf89vlRB

--HG--
extra : rebase_source : 10234bd7d837eae8dc915e4a0c0a37040fd0a280
2017-06-01 10:38:22 -04:00
Christoph Kerschbaumer
6584da597b Bug 1407891: Allow view-image to open a data: URI by setting a flag on the loadinfo. r=bz 2017-11-08 20:01:41 +01:00
Sylvestre Ledru
79a24b6820 Bug 1414631 - Remove the Chromium Process class r=jld
MozReview-Commit-ID: B5NmJPQhGYm

--HG--
extra : rebase_source : 686a0877def17a2d79b33f912f20ccbd7228a4cf
2017-11-07 14:57:23 +01:00
Andrea Marchesini
a4d8f81bac Bug 1414767 - Moving SlicedInputStream under mozilla namespace, r=froydnj 2017-11-07 01:04:06 +01:00
Sebastian Hengst
e50208ab81 Backed out changeset 66d49b9e8217 (bug 1414767) for build bustage on OS X: CoreServices.framework/Frameworks/AE.framework/Headers/AERegistry.h:693: reference to 'TextRange' is ambiguous. r=backout on a CLOSED TREE 2017-11-06 17:51:56 +01:00
Andrea Marchesini
096614f974 Bug 1414767 - Moving SlicedInputStream under mozilla namespace, r=froydnj 2017-11-06 16:21:01 +01:00
Sebastian Hengst
f0accc0bc5 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-11-04 11:01:09 +01:00
Sebastian Hengst
d61954557d merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: Ai6Y5GGfkfT
2017-11-04 10:58:24 +01:00
Christoph Kerschbaumer
3d0a1f002e Bug 1403814 - Block toplevel data: URI navigations only if openend in the browser. r=smaug 2017-11-03 13:23:11 +01:00
Chris Peterson
4a8bdd4ca5 Bug 1412048 - Replace some NS_RUNTIMEABORT(var) calls with MOZ_CRASH_UNSAFE_PRINTF. r=froydnj data-review=francois
MOZ_CRASH_UNSAFE_PRINTF causes data collection because crash strings are annotated to crash-stats and are publicly visible. Firefox data stewards must do data review on usages of this macro. However, all the crash strings this patch collects with MOZ_CRASH_UNSAFE_PRINTF are already collected with NS_RUNTIMEABORT.

MozReview-Commit-ID: 5ujXa9MHH5Z

--HG--
extra : rebase_source : 1367e6ac3c6085341e36cb0859d91417245ea472
extra : source : 3edeb64a40afd79d5c01ae0f0d3ab2777a2e744b
2017-10-26 00:49:00 -07:00
sotaro
551a052a4a Bug 1410766 - Re-acquireDevices in gpu process when SimulateDeviceReset() is called r=dvander 2017-11-03 17:06:37 +09:00
Aaron Klotz
6b2941a696 Update BUG_COMPONENT in ipc/mscom (no bug) DONTBUILD; r=me 2017-11-02 15:02:21 -06:00
Sebastian Hengst
1133016f04 Backed out 6 changesets (bug 1386404) for XPCshell failures, at least on Linux. r=backout on a CLOSED TREE
Backed out changeset c80acdea24c1 (bug 1386404)
Backed out changeset 6224ffae752a (bug 1386404)
Backed out changeset 9eba087cf64a (bug 1386404)
Backed out changeset eac6eb517096 (bug 1386404)
Backed out changeset 802a00ea50e7 (bug 1386404)
Backed out changeset d7f697bac6ef (bug 1386404)
2017-11-03 20:28:00 +01:00
Gian-Carlo Pascutto
82ebafba73 Bug 1386404 - The environment has to live forever. r=jld
MozReview-Commit-ID: Lux9D8Ss8fK

--HG--
extra : rebase_source : 255b492fc6a978fcded781ea42221c75f01e3b6e
2017-10-31 15:06:53 +01:00
Gian-Carlo Pascutto
fff36a228d Bug 1386404 - Enable content-process specific tmpdir on Linux. r=haik
MozReview-Commit-ID: 6Hijq0to9MG

--HG--
extra : rebase_source : 083bf3d52e228ce953d31ef997f969a0e4a562ec
2017-10-12 11:18:25 +02:00
NARCIS BELEUZU
0a208387ad Merge mozilla-central to autoland. r=merge a=merge on CLOSED TREE 2017-11-03 12:20:45 +02:00
Tom Ritter
433d959e05 Bug 1403358 Only reference ActivationContext if Acessibility is enabled r=aklotz
This also enables the crash reporter on the MinGW build, as this is the
only thing blocking that from working.

MozReview-Commit-ID: Hygd7UUQvwl

--HG--
extra : rebase_source : a4a12b8edaa5b1fba869d6f7c21fc8444be2d9d7
2017-10-26 15:09:50 -05:00
Tim Taubert
1d2e8ed150 Bug 1412408 - Fix content process leak of U2FTransactionChild instances r=jcj
Summary:
This patch fixes the reported leak of U2FTransactionChild instances in the
content process by introducing a WebAuthnTransactionChildBase class that both
WebAuthnTransactionChild and U2FTransactionChild inherit from.

This base class is responsible for proper refcounting. In
BackgroundChildImpl::DeallocPWebAuthnTransactionChild() we currently always
cast to WebAuthnTransactionChild, that will work only for the WebAuthn API. We
can now cast to WebAuthnTransactionChildBase to make this work for U2F as well.

Reviewers: jcj

Reviewed By: jcj

Bug #: 1412408

Differential Revision: https://phabricator.services.mozilla.com/D179
2017-11-02 12:18:19 +01:00
Ben Kelly
814922898d Bug 1413606 P2 Add IPC actor structure and boilerplate. r=baku 2017-11-01 13:19:38 -04:00
Aaron Klotz
d223c72b0e Bug 1411391: Ensure mscom::InterceptorLog covers time spent wrapping outparams in mscom::MainThreadHandoff; r=jimm
MozReview-Commit-ID: 8529IjAXZcb

--HG--
extra : rebase_source : 975d0ba8fc0358c2ddba5b935be967c4e78d919e
2017-10-23 16:55:26 -06:00
Chris Peterson
73037a0f6a Bug 1412048 - Replace NS_RUNTIMEABORT(var) with MOZ_CRASH_UNSAFE_OOL(var). r=froydnj data-review=francois
And remove unreachable code after MOZ_CRASH_UNSAFE_OOL().

MOZ_CRASH_UNSAFE_OOL causes data collection because crash strings are annotated to crash-stats and are publicly visible. Firefox data stewards must do data review on usages of this macro. However, all the crash strings this patch collects with MOZ_CRASH_UNSAFE_OOL are already collected with NS_RUNTIMEABORT.

MozReview-Commit-ID: IHmJfuxXSqw

--HG--
extra : rebase_source : 031f30934b58a7b87f960e57179641d44aefe5c5
extra : source : fe9f638a56a53c8721eecc4273dcc074c988546e
2017-10-24 23:38:38 -07:00
Chris Peterson
1df202b177 Bug 1412048 - Replace NS_RUNTIMEABORT("...") with MOZ_CRASH("..."). r=froydnj
And remove unreachable code after MOZ_CRASH().

MozReview-Commit-ID: 6ShBtPRKYlF

--HG--
extra : rebase_source : 0fe45a59411bda663828336e2686707b550144ae
extra : source : 8473fd7333d2abe1ea1cc176510c292a5b34df45
2017-10-24 23:30:31 -07:00
Sebastian Hengst
f07fc93141 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4PW6ESqLL73
2017-10-30 23:52:23 +01:00
Alex Gaynor
39cca322e7 Bug 1412313 - Handle large string lengths in nsAString's ParamTraits. r=billm
MozReview-Commit-ID: HR6kMzSkewS
2017-10-27 16:13:46 -04:00
Sebastian Hengst
d67d120cc4 Backed out 4 changesets (bug 1386404) for mass failures, e.g. in browser-chrome's dom/tests/browser/browser_xhr_sandbox.js. r=backout on a CLOSED TREE
Backed out changeset 36556e1a5ac7 (bug 1386404)
Backed out changeset b136f90dc49f (bug 1386404)
Backed out changeset 4600c2d575f9 (bug 1386404)
Backed out changeset c2c40e4d9815 (bug 1386404)
2017-10-30 19:10:01 +01:00
Gian-Carlo Pascutto
802f1b9395 Bug 1386404 - Enable content-process specific tmpdir on Linux. r=haik
MozReview-Commit-ID: 6Hijq0to9MG

--HG--
extra : rebase_source : c7a3559e4cbdfd1885d13a489c4eeb311ca973fa
2017-10-12 11:18:25 +02:00
Andrew McCreight
2f7ae795af Bug 1412138 - Re-fix mode lines in ipc/chromium and ipc/glue. r=kanru
--HG--
extra : rebase_source : 0f12dc7af00745cf83a93b1faa516f51ff293cc2
2017-10-26 16:05:47 -07:00
Andrea Marchesini
1e90a67e4d Bug 1412258 - Get rid of ipc/dbus, r=smaug
--HG--
rename : ipc/dbus/DBusConnectionRefPtr.h => netwerk/wifi/DBusHelpers.h
2017-10-27 18:41:40 +02:00
Andrea Marchesini
513f906890 Bug 1412253 - Get rid of ipc/ril code, rs=smaug 2017-10-27 12:54:47 +02:00
Sebastian Hengst
5c15da1f08 merge mozilla-inbound to mozilla-central. r=merge a=merge
--HG--
rename : testing/talos/tests/__init__.py => testing/talos/talos/unittests/__init__.py
rename : testing/talos/tests/browser_output.ts.txt => testing/talos/talos/unittests/browser_output.ts.txt
rename : testing/talos/tests/browser_output.tsvg.txt => testing/talos/talos/unittests/browser_output.tsvg.txt
rename : testing/talos/tests/profile.tgz => testing/talos/talos/unittests/profile.tgz
rename : testing/talos/tests/ps-Acj.out => testing/talos/talos/unittests/ps-Acj.out
rename : testing/talos/tests/test_talosconfig_browser_config.json => testing/talos/talos/unittests/test_talosconfig_browser_config.json
rename : testing/talos/tests/test_talosconfig_test_config.json => testing/talos/talos/unittests/test_talosconfig_test_config.json
rename : testing/talos/tests/xrestop_output.txt => testing/talos/talos/unittests/xrestop_output.txt
2017-10-27 12:45:34 +03:00
James Teh
73c24a66f6 Bug 1403180: Fix StripHandlerFromOBJREF for VT_DISPATCH on Windows 7. r=aklotz
StripHandlerFromOBJREF shortens the OBJREF by sizeof(CLSID), so it needs to seek the stream back after tweaking the OBJREF.
Previously, this was done using a relative seek.
Unfortunately, for some reason I can't fathom on Windows 7, this doesn't work when marshaling for VT_DISPATCH.
The Seek call succeeds, but either does nothing or sets the stream position to a garbage value.
Instead, we now use an absolute seek, which seems to behave.
This was breaking IAccessible::accNavigate and AccessibleChildren on Windows 7.
MozReview-Commit-ID: FEH93oiyP5R

--HG--
extra : rebase_source : b15db60da888b49cbd371bc5c8311577a2c7ece4
2017-10-23 15:37:24 +10:00
Aaron Klotz
5a394f86cf Bug 1411439: Pass reference to owning interceptor into HandlerProvider for payload creation; r=Jamie
MozReview-Commit-ID: GUW4DrsJEn

--HG--
extra : amend_source : 755ff37c8bc40de408f8668e9e44ebfd41bd9136
2017-10-24 17:48:51 -06:00
Sebastian Hengst
4d087e6f8b Backed out changeset 817727beee91 (bug 1410766) for leak. r=backout
--HG--
extra : amend_source : 3137b1b2bd4cafe41651244531957708193eccbb
2017-10-26 23:39:23 +02:00
Chris Manchester
c86173526a Bug 1403346 - Replace all uses of ALLOW_COMPILER_WARNINGS with a template, remove ALLOW_COMPILER_WARNINGS. r=glandium
MozReview-Commit-ID: 1G2o4fy74cf
2017-10-25 15:12:09 -07:00
Andrea Marchesini
9a7c9c7e95 Bug 1408333 Get rid of nsIIPCBackgroundChildCreateCallback - part 20 - main part, r=asuth 2017-10-24 12:02:41 +02:00
sotaro
c7d1be868f Bug 1410766 - Re-acquireDevices in gpu process when SimulateDeviceReset() is called r=dvander
--HG--
extra : amend_source : 4de9f562337cff010b90a3f579d7f7a451bebc5e
2017-10-26 17:32:07 +02:00
Attila Craciun
950e37c5e7 Backed out 1 changesets (bug 1410766) for failing Reftest in reftest/tests/layout/reftests/bugs/409084-1a.html r=backout on a CLOSED TREE.
Backed out changeset 6eac731d5c33 (bug 1410766)
2017-10-26 16:40:41 +03:00
sotaro
fa6c47dce5 Bug 1410766 - Re-acquireDevices in gpu process when SimulateDeviceReset() is called r=dvander 2017-10-26 19:40:24 +09:00
Sylvestre Ledru
d60d69e2cb Bug 1411001 - Remove the +x permissions on cpp & h files r=froydnj
MozReview-Commit-ID: DjDkL20wRg0

--HG--
extra : rebase_source : a343d83d1f4e97e4ba56d0f57fec93079df0b5ea
2017-10-23 20:59:55 +02:00
Sebastian Hengst
7e9a8a9bc9 merge mozilla-central to autoland. r=merge a=merge 2017-10-21 11:00:23 +02:00
Jed Davis
70736cfb1b Bug 1401790 - Remove ProcessArchitecture from IPC. r=billm,jimm
This was used to support cross-architecture NPAPI plugins on OS X, but
we stopped supporting that in 54 (bug 1339182).

MozReview-Commit-ID: 2BcWYD6mguY

--HG--
extra : rebase_source : 6e509a3cc1f356ccd24f1459c43bc8fb66d7b0f4
2017-10-04 20:31:12 -06:00
sotaro
8d85c3d52b Bug 1405952 - Remove PWebRenderBridge::SetDisplayListSync r=kats,kanru 2017-10-20 19:48:57 +09:00
Sebastian Hengst
24583b9443 merge mozilla-central to autoland. r=merge a=merge 2017-10-20 01:08:09 +02:00
Aaron Klotz
8f79c15fdb Bug 1409545: Add the ability to query a handler provider for the expected interface for an IUnknown outparam; r=jimm
MozReview-Commit-ID: 7eZ2giTfVG1

--HG--
extra : rebase_source : cc36fbd875ef798c41f20951b8354880138c0037
2017-10-16 16:15:02 -06:00
Kris Maglione
4a767c7e6e Bug 1404198: Part 2j - Switch to NS_NewTimer* everywhere else. r=njn
MozReview-Commit-ID: LmGIgfmNSmk

--HG--
extra : rebase_source : bf34e852beb0c8f6eafd09184c2e0cda95f95f83
2017-09-24 19:57:48 -07:00
Aaron Klotz
eb3882c42d Bug 1409538: Add durations to MSCOM log; r=jimm
This patch adds two additional fields to each mscom log entry: The first is
the duration, in microseconds, of time spent in mscom overhead when executing
a call from the MTA on behalf of a remote client.

The second field is the duration, in microseconds, of time spent actually
executing the method within Gecko itself.

(In other words, the sum of the two fields will equal the total duration of
time spent executing the call.)

MozReview-Commit-ID: EhFieEPrhE5
2017-07-25 15:57:18 -06:00
Jed Davis
84c3a8a672 Bug 1400061 - Stop using SetAllFDsToCloseOnExec when launching processes on OS X. r=billm
As its original comments indicate, SetAllFDsToCloseOnExec has an
unavoidable race condition if another thread creates file descriptors
during launch.  Instead, use POSIX_SPAWN_CLOEXEC_DEFAULT, which is an
Apple-specific extension to posix_spawn that accomplished the desired
effect atomically.

This patch also introduces some RAII to simplify cleanup in error cases.

MozReview-Commit-ID: 6oHggs77AiY

--HG--
extra : rebase_source : a9391031a95fee4977af800ca993871277db51ce
2017-10-04 19:39:54 -06:00
Kris Maglione
bd6d63772a Bug 1407428: Hand out a const array reference for expanded principal whiteList. r=krizsa
The current API makes the life time and ownership of the result array unclear
without careful reading. The result array is always owned by the principal,
and its lifetime tied to the lifetime of the principal itself. Returning a
const array reference makes this clear, and should prevent callers from
accidentally modifying the returned array.

MozReview-Commit-ID: 3f8mhynkKAj

--HG--
extra : source : 237acf2879f6222bc4b076c377bf026d18a6ebef
extra : amend_source : dfaf6e88e3c4758f7fdcf7fb422d457edafab1b7
2017-10-10 15:00:16 -07:00
Sebastian Hengst
11a2b8ef67 Backed out changeset 237acf2879f6 (bug 1407428) for frequent crashes, e.g. in xpcshell's test_bug248970_cookie.js. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 1ccac4fb953566239cba8db7d6f8bdca4ce48b35
2017-10-16 00:00:15 +02:00
Kris Maglione
7d8f8ea3d6 Bug 1407428: Hand out a const array reference for expanded principal whiteList. r=krizsa
The current API makes the life time and ownership of the result array unclear
without careful reading. The result array is always owned by the principal,
and its lifetime tied to the lifetime of the principal itself. Returning a
const array reference makes this clear, and should prevent callers from
accidentally modifying the returned array.

MozReview-Commit-ID: 3f8mhynkKAj

--HG--
extra : rebase_source : d2a5e0862f8c964fb5a3e46b50c2e9629b218699
extra : amend_source : 27d7a7ef5da6fe2aa1104009b6ee067465db73e1
2017-10-10 15:00:16 -07:00
Dan Banner
7caa92d5d8 Bug 1408777 - Automatically fix instances of missing semicolons in the tree. r=Standard8
MozReview-Commit-ID: Jm8BRgt6mIv
2017-10-15 20:50:39 +01:00
Jed Davis
a9b7865141 Bug 1316153 - Remove base::ChildPrivileges from IPC. r=billm,bobowen
ChildPrivileges is a leftover from the B2G process model; it's now
mostly unused, except for the Windows sandbox using it to carry whether
a content process has file:/// access.

In general, when sandboxing needs to interact with process launch, the
inputs are some subset of: the GeckoProcessType, the subtype if content,
various prefs and even GPU configuration; and the resulting launch
adjustments are platform-specific.  And on some platforms (e.g., OS X)
it's all done after launch.  So a simple enum used cross-platform isn't
a good fit.

MozReview-Commit-ID: K31OHOpJzla

--HG--
extra : rebase_source : 3928b44eb86cd076bcac7897536590555237b76b
2017-09-08 16:16:50 -06:00
Jed Davis
6f041840ce Bug 1259852 - Merge Linux/BSD/Mac child process environment handling. r=billm f=jbeich
This is mostly based on the BSD version, which in turn is more or less
the Mac version minus some race conditions.  The Linux version does
something similar, but more verbosely and (at least in my opinion) is
harder to follow.  Some changes have been made, mainly to use C++11
features like UniquePtr.

MozReview-Commit-ID: 3Gv4DKCqWvu

--HG--
extra : rebase_source : 972264a778b9361d1259851554b5b7ae8f3dcdc6
2017-09-15 11:18:43 -06:00
evilpies@gmail.com
06beef32ba Bug 1305237 LoadInfo changes to include all ancestors principals and window IDs, r=bz,mystor
MozReview-Commit-ID: 1IMi5MqTx7o

--HG--
extra : rebase_source : 373f1928987718fe3bc22306e0dd3ae13fc0cd9f
2017-10-10 09:54:00 -07:00
Nicholas Nethercote
8a68e6fb83 Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange.
Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.

This patch greatly simplifies how things are exposed. The starting point is:

- GeckoProfiler.h can be #included unconditionally;

- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.

In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.

The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.

Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
2017-10-04 09:11:18 +11:00
Sebastian Hengst
fd1c572923 merge mozilla-central to mozilla-inbound. r=merge a=merge on a CLOSED TREE 2017-10-05 11:47:25 +02:00
Andrea Marchesini
e1d4351ed9 Bug 1403706 - Remove race conditions in temporary blob - part 8 - Remove nsTemporaryFileInputStream, r=smaug 2017-10-05 07:41:43 +02:00
Andrea Marchesini
943e663601 Bug 1403706 - Remove race conditions in temporary blob - part 6 - Introducing PTemporaryIPCBlob, r=smaug 2017-10-05 07:41:42 +02:00
Tom Ritter
99edbfc566 Bug 1404147 Fix signed/unsigned comparison of uints r=jld
MozReview-Commit-ID: 7z3JocWOrW5

--HG--
extra : rebase_source : f90aacbe737deff81da9aca0f6b64cad268074f4
2017-09-28 17:45:46 -05:00
Jim Chen
f281c874c0 Bug 1404144 - 2. Move start child process JNI call to GeckoProcessManager; r=rbarker
Avoid going through GeckoAppShell and move the start child process JNI
call directly to GeckoProcessManager.

MozReview-Commit-ID: KU62TiHVQJX

--HG--
extra : rebase_source : 0e8546da502257e1c59bc00b79f50c79a314f3e6
2017-10-04 22:28:43 -04:00
Mike Hommey
4fe7459180 Bug 1403366 - Stop requiring argv[0] for XRE_GetBinaryPath and the underlying BinaryPath::Get. r=froydnj
--HG--
extra : rebase_source : ac7bb0d7766fce5b6325c34c2868b26eec594e18
2017-09-28 10:37:27 +09:00
Sebastian Hengst
7e81b9743d merge mozilla-central to autoland. r=merge a=merge 2017-10-04 11:15:12 +02:00
Sebastian Hengst
5e0b457b10 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EVLGo1zCANb
2017-10-04 11:13:24 +02:00
Sebastian Hengst
1d5497084d Backed out changeset 582d112281f9 (bug 1403366) 2017-10-04 01:27:07 +02:00
Mike Hommey
3b34606aa6 Bug 1403366 - Stop requiring argv[0] for XRE_GetBinaryPath and the underlying BinaryPath::Get. r=froydnj
--HG--
extra : rebase_source : ac7bb0d7766fce5b6325c34c2868b26eec594e18
2017-09-28 10:37:27 +09:00
Wes Kocher
9e15b5649f Merge m-c to autoland, a=merge
MozReview-Commit-ID: 43R3aNMoMyN
2017-10-03 14:58:01 -07:00
Wes Kocher
f4358f1539 Merge inbound to central, a=merge
MozReview-Commit-ID: I1ge4dvWtTB
2017-10-03 14:37:35 -07:00
Aaron Klotz
aa44e53f36 Bug 1393600: Ensure that the handler sends a known interface to external clients; r=jimm
MozReview-Commit-ID: F5vxF2pB347
2017-09-24 14:32:36 -06:00
Aaron Klotz
35c65ef535 Bug 1393600: Prevent mismatches between the handler's expected interface and the one being provided by content; r=jimm
MozReview-Commit-ID: 4yQENc7i4LS
2017-09-21 16:53:56 -06:00
Tom Ritter
3b81e79e5a Bug 1405417 Add typename keyword in ipc/mscom/PassthruProxy.h to resolve ambiguity around member type r=aklotz
MozReview-Commit-ID: 6zEBdk8bKb9

--HG--
extra : rebase_source : 7e7c7a240abbe066d7f4e1d8b6619471b76c1c2d
2017-10-03 12:32:24 -05:00
Gian-Carlo Pascutto
bc7dfc9353 Bug 1382323 - Remote OSProtocolHandlerExists. r=jld,smaug
MozReview-Commit-ID: Gml7cjbgUvK

--HG--
extra : rebase_source : 6ee7dfc8b5c05aec1ed268011fbec2ef64760554
2017-09-04 21:48:59 +02:00
Sebastian Hengst
9a0edde0b2 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IRW0W7LuIM7
2017-10-03 11:43:52 +02:00
Aaron Klotz
f88fa2ef6c Bug 1399557: Add Environment to mscom::ProxyStream and define it for IAccessible; r=jimm
MozReview-Commit-ID: 4wBjnFW9GRa

--HG--
extra : rebase_source : 43308d5c1d926300be222cb59d4913f61cc6c060
2017-09-29 15:41:28 -06:00
Benjamin Smedberg
ce00e2cd37 Bug 1352567 - Remove plugin IPC code to support stream types other than NP_NORMAL (seekable and/or file streams), r=jimm
MozReview-Commit-ID: FWl2gcpKy6D
2017-10-02 14:54:22 -07:00
Wes Kocher
7c7aca4ea6 Backed out 2 changesets (bug 1305237) for crashtest failures in 403574-1.xhtml and 1282985-1.svg a=backout
Backed out changeset 96b5d596cc27 (bug 1305237)
Backed out changeset 5fe72402746f (bug 1305237)

MozReview-Commit-ID: CjCWY73Hps1

--HG--
extra : rebase_source : 7a9f0893dabdb0cb6ea79cc9cb7169ceed14616f
2017-10-02 16:41:56 -07:00
evilpies@gmail.com
af192f668f Bug 1305237 LoadInfo changes to include all ancestors principals and window IDs, r=bz
MozReview-Commit-ID: ADVtxjSQjk5

--HG--
extra : rebase_source : 6e0ddf49328d7ae71937b7bbe5e5bea736c49bef
2017-10-02 11:05:33 -07:00
Wes Kocher
6b7e085c86 Backed out 2 changesets (bug 1305237) for bc failures in browser_WebRequest_ancestors.js a=backout
Backed out changeset 163a2b0bb0a0 (bug 1305237)
Backed out changeset e05bab140564 (bug 1305237)

MozReview-Commit-ID: GLlbWYZqyVS
2017-10-02 13:35:03 -07:00
Andrew McCreight
256f12363f Bug 1403961, part 2 - Fix and enable eslint for ipc/. r=billm
After the previous patch, all that is needed to pass eslint is some
whitespace fixes I generated using:
  ./mach eslint --fix ipc

The .eslintrc.js file makes eslint expect XPCShell global variables.

With those two changes, eslint can be enabled for the ipc/ directory.

MozReview-Commit-ID: BqSICp2iV6O

--HG--
extra : rebase_source : ccab8be9fc1ae1116ae55631d3978c39d35cad05
2017-09-29 09:46:32 -07:00
Andrew McCreight
5bee3fc312 Bug 1403961, part 1 - Don't load test_ipcshell_child.js from test_ipcshell.js. r=billm
I don't fully understand what this test is trying to do, but as far as
I can see, test_ipcshell_child.js does nothing when loaded from
test_ipcshell.js besides define a few variables, so just define them
directly in test_ipcshell.js. I am doing this because eslint does not
like the way the test is currently written: the definition of runtime
in another file confuses it, and it does not like the assignment to
run_test.

MozReview-Commit-ID: Ek0HY9n49eZ

--HG--
extra : rebase_source : 5c99b20afe93c085a198e7824e82207be347f26b
2017-09-29 09:52:23 -07:00
Jed Davis
cf40bed720 Bug 1397928 - Remove some unused type definitions from process_util. r=billm
MozReview-Commit-ID: I30AUWYOPwi

--HG--
extra : rebase_source : 4183336bd3e1f0055366ebddf39cd1f518e2b139
2017-08-28 12:45:29 -06:00
Arthur Edelstein
8c18d9409a Bug 1404226 - Fix ubsan runtime error for mozilla::ipc::Transport::Mode enum. r=billm 2017-10-02 02:03:00 -04:00
evilpies@gmail.com
8d8e27a06f Bug 1305237 LoadInfo changes to include all ancestors principals and window IDs, r=bz
MozReview-Commit-ID: ADVtxjSQjk5

--HG--
extra : rebase_source : 6e0ddf49328d7ae71937b7bbe5e5bea736c49bef
2017-10-02 11:05:33 -07:00
Petr Sumbera
cd2a716e79 Bug 1402851 - ipc/chromium/moz.build needs some stuff for Solaris too. r=glandium 2017-09-25 06:53:41 -07:00
Ryan VanderMeulen
2ccfaf0697 Backed out changesets d0d30a90efa1 and fd1d81b93380 (bug 1305237) for causing bug 1403932. 2017-09-28 17:55:43 -04:00
evilpies@gmail.com
95cfc510a9 Bug 1305237 LoadInfo changes to include all ancestors principals and window IDs, r=bz
MozReview-Commit-ID: JdOjc7Ihhv

--HG--
extra : rebase_source : 82ac220ad4cb39536014d5732b4731f0889dafa6
2017-09-25 12:12:47 -07:00
Kan-Ru Chen
9016ef6cef Bug 1397456 - Always use static name for ipc messages r=billm
Never store names in Message. One can get string names from
Message::name() or use IPC::StringFromIPCMessageType() when only
message id is available.

MozReview-Commit-ID: 15ksx6SE90c

--HG--
extra : rebase_source : 1a041dc365b7f42edd540d8c7a4dfd8912e48921
2017-09-14 16:08:57 +08:00
Ryan Hunt
83e90232cc Don't crash in SendBuildID when MessageChannel isn't connected. (bug 1333056, r=dvander)
xpcshell can sometimes create and then almost immediately kill the GPU process. This can
cause the connection state of GPUParent's message channel to be in error or closed
when it attempts to send its build ID. In this case we should ignore the request
because the process will soon close.

MozReview-Commit-ID: EAupU844iFo

--HG--
extra : histedit_source : df05a01df5ad095b4e3c91e0e038d4e145da5f9d
2017-09-22 16:15:21 -05:00
Bevis Tseng
da72a5478c Bug 1399707 - Make entries in TabChild::sActiveTabs and EventLoopActivation::mEventGroups unique. r=billm
--HG--
extra : rebase_source : ffccc53b6b1055d7cfeb281ee145b897807a7810
2017-09-13 11:59:35 +08:00
Bill McCloskey
061f254d6e Bug 1398070 - Convert WillDestroyCurrentMessageLoop assertion to a safe no-op (r=dvander)
MozReview-Commit-ID: HZvW6nsvrj9
2017-09-25 15:45:24 -07:00
Dan Minor
30d76b125c Bug 1382182 - Build jsep using moz.build; r=ted,jesup
MozReview-Commit-ID: 9UhlBZi0yO0

--HG--
extra : rebase_source : 7ad69af2dfb61ad88fc5f87f4d17a09abbf23edc
2017-07-20 11:24:08 -04:00
Chris Peterson
1ca3d5aa46 Bug 870698 - Part 8: Replace Equals(NS_LITERAL_CSTRING("")) with EqualsLiteral(""). r=erahm
The NS_LITERAL_CSTRING macro creates a temporary nsLiteralCString to encapsulate the string literal and its length, but AssignLiteral() can determine the string literal's length at compile-time without nsLiteralCString.

MozReview-Commit-ID: B5Y8KyExPQ8

--HG--
extra : rebase_source : e27b266c145daa5acd887e998c6d5b408101e1db
extra : source : 33f49977a33cbdb1c7127871b940eefccc018f65
2017-09-06 15:00:31 -07:00
Chris Peterson
45aa2a8e8e Bug 870698 - Part 2: Replace Append("") with AppendLiteral(""). r=erahm
MozReview-Commit-ID: CrkIP4iHP1U

--HG--
extra : rebase_source : 5dc4e91a3f1860773c199f1abf3f66479218834a
extra : intermediate-source : ba51cc79847f2b43ba616f4a5d2bbc6958ca9f6d
extra : source : 1fda2fa990cc918c748ffa14fcc5dbe13fe3bdc3
2017-09-03 22:14:11 -07:00
Aaron Klotz
da8dc618c4 Bug 1383501: Obtain and report the current activation context's manifest path; r=jimm
MozReview-Commit-ID: HJ1zNoEMzvS
2017-09-19 14:35:27 -06:00
Nathan Froyd
5e23bf9dc1 Bug 1328634 - part 2 - use UniquePtr to manage messages inside of MessageChannel; r=billm
Using them for replies in various places would be a much larger task.
This is nice and simple.
2017-09-21 14:52:37 -05:00
Nathan Froyd
98a84baac9 Bug 1328634 - part 1 - use UniquePtr in AutoEnterTransaction; r=billm
One less use of nsAutoPtr!
2017-09-21 14:52:37 -05:00
Wes Kocher
a6b8d9e91b Merge inbound to central, a=merge
MozReview-Commit-ID: JpqY5uEi1nf
2017-09-20 17:18:21 -07:00
Aaron Klotz
143a969b94 Bug 1399557: Follow-up: Add check for expected error code; r=bustage
--HG--
extra : rebase_source : bf2db1dc3f7869f360bd22557a793cc3f770aee7
extra : amend_source : 9fc98cc81cac846dcde68abad2ff1ab0c3f46dad
2017-09-20 14:40:41 -06:00
Andrew McCreight
36eb42025b Bug 1176342, part 1 - De-COM InitClassesWithNewWrappedGlobal. r=mrbkap
MozReview-Commit-ID: EfRQW3QUXCG

--HG--
extra : rebase_source : 895694d28cc228cfb095639880738c84767e08a8
2017-09-18 16:35:39 -07:00
Aaron Klotz
c0a1a84af9 Bug 1399557: Add diagnostic asserts to interceptor creation code; r=jimm
MozReview-Commit-ID: 9fJxHbxCmgh
2017-09-18 10:49:15 -06:00
Markus Stange
6aae3892e2 Bug 1401305 - Fix TaskTracer build failure. r=froydnj
MozReview-Commit-ID: 62KhOTwvxuZ

--HG--
extra : rebase_source : 6e870da2a216d717e4dea7063b6991eb44caa8d4
2017-09-19 15:15:36 -04:00
Aaron Klotz
6fdf5f0f15 Bug 1383501: Diagnostic assert when CoMarshalInterface returns E_INVALIDARG; r=jimm
MozReview-Commit-ID: JDSKZLgij83
2017-09-18 11:04:09 -06:00
Nathan Froyd
37cbcb454b Bug 1397823 - part 4 - reduce codesize for IPDL IPC::Message creation; r=kanru
Each protocol in IPDL has a bunch of autogenerated functions that
instantiate IPC::Message with various parameters.  Each of these
functions, then:

1) Pays the cost of calling malloc()
2) Setting up various parameters
3) Calling IPC::Message()

There's no reason that we should be duplicating 1) across all of these
autogenerated functions.  In step 2), several of the parameters we're
setting up are common across all or nearly all calls: the message
segment size is almost always zero, and we're always indicating that
IPDL-generated messages should be recorded in telemetry.

Instead of duplicating that code several thousand times, we can add a
small helper function that takes the only interesting parameters for an
IPDL message.  This helper function can then deal with calling malloc in
a single place and setting up the common parameters.  For messages that
require a custom segment size, we'll have to use the old scheme, but
such messages are uncommon.

The previous changes are not required for this scheme to work, but they
do help significantly, as the helper function (Message::IPDLMessage) can
now take four parameters, which ensures that its arguments are passed
solely in registers on Win64 and ARM.  The wins from this change are
also larger than they would be without the previous parts: ~100K on
x86-64 Linux (!)  and ~80K on ARM Android.
2017-09-15 08:06:11 -04:00
Nathan Froyd
a697f87d36 Bug 1397823 - part 3 - do a better job setting IPC::Message flags; r=kanru
The current IPC::Message constructor takes a large number of arguments,
three of which--the nesting level, the priority, and the
compression--are almost always constant by virtue of the vast majority
of Message construction being done by auto-generated IPDL code.  But
then we take these constant values into the Message constructor, we
check them for various values, and then based on those values, we
perform a bunch of bitfield operations to store flags based on those
values.  This is wasted work.

Furthermore, for replies to IPDL messages, we'll construct a Message
object, and then call mutating setters on the Message object that will
perform even more bitfield manipulations.  Again, these operations are
performing tasks at runtime that are the same every single time, and use
information we already have at compile time.

The impact of these extra operations is not large, maybe 15-30K of extra
code, depending on platform.  Nonetheless, we can easily make them go
away, and make everything cleaner to boot.

This patch adds a HeaderFlags class that encapsulates all the knowledge
about the various kinds of flags Message needs to know about.  We can
construct HeaderFlags objects with strongly-typed enum arguments for the
various kinds of flags, and the compiler can take care of folding all of
those flags together into a constant when possible (and it is possible
for all the IPDL-generated code that instantiates Messages).  The upshot
is that we do no unnecessary work in the Message constructor itself.  We
can also remove various mutating operations on Message, as those
operations were only there to support post-constructor flag twiddling,
which is no longer necessary.
2017-09-15 08:06:11 -04:00
Nathan Froyd
c726125099 Bug 1397823 - part 2 - tidy _generateMessageConstructor enums a little; r=kanru
There's no need to be repeating 'IPC::Message::' prefixes or spreading
around more ExprVar calls than we need here.  Let's try to improve the
signal-to-noise ratio of this code by introducing a helper function to
inject some of the boilerplate for us.
2017-09-15 08:06:11 -04:00
Nathan Froyd
f4a054ab8d Bug 1397823 - part 1 - move work into _generateMessageConstructor; r=kanru
_generateMessageConstructor takes a lot of `md.FOO`-style parameters,
which could be derived inside the function by simply passing `md`.
Especially with the upcoming changes to calculate things like reply-ness
of messages, sync-ness, etc, we'd be wanting to pass even more
parameters like `md.FOO`.  So let's just pass `md` in, and then we can
make all the necessary future changes in a single place.
2017-09-15 08:06:11 -04:00
Kartikaya Gupta
b4ad327a0e Bug 1390488 - Pass the childProcessTmpDir from the parent process to the GPU process. r=froydnj
The GPU process doesn't have the directory service enabled, so it can't find
a tmp dir to put its .extra files for crash reports. Even if we do enable the
directory service, we still don't get the correct "content process tmp dir" in
the GPU process, because the UUID baked into that folder is passed via the
preferences service, and that isn't initialized in the GPU process either.
Rather than unneccessarily initialize all this stuff in the GPU process just
to get one folder name, we can pass that folder name directly in the argv list.

See comments 12-19 on the bug for further discussion of the various solutions
attempted/explored.

MozReview-Commit-ID: 1sFg27hIe7S

--HG--
extra : rebase_source : 78eb600a58fed45800b9df8303cc4d6898d96ae9
2017-09-13 11:26:25 -04:00