Commit Graph

4158 Commits

Author SHA1 Message Date
Aaron Klotz
230ddb60a5 Bug 1368571: Modify handler and interceptor marshaling code so that it strips out any handlers from proxies that are destined for non-Gecko processes; r=jimm
MozReview-Commit-ID: A1lCqvbQYAF

There is no clean API-based solution to this, so instead I went grovelling
through the DCOM wire protocol and was able to write a function that converts
handler OBJREFs into standard OBJREFs.

See also:
https://msdn.microsoft.com/en-us/library/cc226801

--HG--
extra : rebase_source : a650055c4adda3a1d99262e47f2b463074c6b935
2017-06-06 17:35:51 -06:00
Aaron Klotz
b08f42f77d Bug 1367885: Follow-up - remove code that mistakenly landed as part of commit 09894b9ce473; r=backout
MozReview-Commit-ID: 3ORbwx6QFhR

--HG--
extra : rebase_source : a32c7f2b4a471495929b4055ba293826d07c6da2
2017-06-07 14:39:15 -06:00
Jan Varga
4cc459c1a1 Bug 1370519 - Part 2: Merge FileHandle base classes with IndexedDB specific classes (except parent actors); r=btseng 2017-06-07 12:36:42 +02:00
Kyle Machulis
13959a88ce Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg 2017-06-06 18:29:32 -07:00
Aaron Klotz
5e1f870e91 Bug 1367715: Back out 67e4f5e8a105 as it was not the correct fix; r=backout
--HG--
extra : rebase_source : be1fa414385c38d5a0f90b26dafa864771e9107f
2017-06-06 18:17:42 -06:00
Aaron Klotz
4a8e3690de Bug 1369111: Modify mscom interceptor to maintain a set of weak references to all interceptors that are currently live; r=jimm
MozReview-Commit-ID: 2pyAiw53rj7

Currently we wrap every outpointer interface with its own interceptor. Even two
identical interface outparams will get their own unique interceptors. Not only
does this violate COM object identity, but it is also inefficient; if an
interceptor already exists for a given interface, we should reuse it.

This patch adds a live set: when we create a new interceptor, we first check
the live set and reuse an existing interceptor if it is present. Otherwise we
create a new one and then insert it into the set.

The set uses thread-safe weak references to guard against races during
interceptor teardown.

--HG--
extra : rebase_source : fb3f11600fb368d169bd1164433e2d8780592146
2017-05-18 13:04:26 -06:00
Aaron Klotz
e3fdd6169e Bug 1367885: Add a fast path to mscom Interceptor construction; r=jimm
MozReview-Commit-ID: AmS5oBNV7Po

When creating a new interceptor, we already have the correct target interface.
The interceptor ignores this and does a redundant inter-thread QI to resolve
an interface that we already have!

This patch adds a fast path to interceptor initialization that skips all of that
stuff and directly initializes itself using the given target interceptor.

--HG--
extra : rebase_source : dcfff7270efd5bda990e240bb06a9206656d5852
2017-06-06 18:30:19 -06:00
Wes Kocher
7faba1c580 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 81kvO3JCHf0
2017-06-05 17:43:44 -07:00
Wes Kocher
3c05a4998a Merge inbound to central, a=merge
MozReview-Commit-ID: Cb3YlCdVhQr
2017-06-05 17:34:09 -07:00
Ryan VanderMeulen
4b1082a507 Backed out changeset 0ff4ad45f99c (bug 1337058) for causing bug 1370237.
--HG--
extra : rebase_source : 3ed4d5a41898ead386f8a75b0d2f7be1899cf767
2017-06-05 20:14:55 -04:00
Stephen A Pohl
8692190b2e Bug 1367487: Change bundle name (CFBundleName) of content process on OSX/macOS to differentiate it from the Firefox bundle name. r=mstange,ted 2017-06-05 16:08:24 -04:00
Masayuki Nakano
94170bb269 Bug 1370198 Back out the patch for bug 1369419 because the patch couldn't fix bug 1361132 and causes new crash bugs r=jimm
MozReview-Commit-ID: Eq7Dkk6Ghwc

--HG--
extra : rebase_source : edc2d10f4e0359152927830a269f74b75daf5883
2017-06-05 21:52:16 +09:00
Aaron Klotz
ec02e78c40 Bug 1367885: Backed out changeset 3f6e08c5233f for bc4 bustage on a CLOSED TREE; r=backout
MozReview-Commit-ID: 4CDliBImLR7
2017-06-05 12:51:52 -06:00
Aaron Klotz
0fdef67a82 Bug 1367885: Follow-up - fix missing explicit keyword on constructor on a CLOSED TREE; r=bustage
MozReview-Commit-ID: KvlrtJlUir8

--HG--
extra : rebase_source : 88b65dfdc34e2df79dec294f3828f1dc6b33ceeb
extra : histedit_source : 42f77c82bd86f54154df52d4fa58c6107771868b
2017-06-05 12:29:04 -06:00
Aaron Klotz
1f513d3180 Bug 1367885: Add a fast path to mscom Interceptor construction; r=jimm
MozReview-Commit-ID: AmS5oBNV7Po

When creating a new interceptor, we already have the correct target interface.
The interceptor ignores this and does a redundant inter-thread QI to resolve
an interface that we already have!

This patch adds a fast path to interceptor initialization that skips all of that
stuff and directly initializes itself using the given target interceptor.

--HG--
extra : rebase_source : bb017b8098b3d94c453d6be982a205ade36c772d
2017-05-17 16:38:45 -06:00
Kartikaya Gupta
8bd2880fc4 Bug 1369840 - Add new test IPDL message to sync-messages.ini. r=dvander
MozReview-Commit-ID: 51i94Gj0Mgq
2017-06-04 22:29:35 -04:00
Masayuki Nakano
d3789d2d6b Bug 1369419 GetMessage() and PeekMessage() shouldn't be used directly as far as possible r=jimm
In TSF mode, application should retrieve messages with ITfMessagePump::GetMessage() or ITfMessagePump::PeekMessage() since TSF/TIP may handle the message before or after the host application handles it.

This patch rewrites the API users with WinUtils::(Get|Peek)Message() which use ITfMessagePump if it's available.

MozReview-Commit-ID: LwHIgp7SxLH

--HG--
extra : rebase_source : aa5750af9812f9b107c29546cbee6f9eede6ebfa
2017-06-02 12:02:35 +09:00
Sebastian Hengst
ec19dce387 Backed out changeset 581ca67895db (bug 1369840) 2017-06-03 10:11:21 +02:00
Kartikaya Gupta
5b65b917cd Bug 1369840 - Add new test IPDL message to sync-messages.ini. r=dvander
MozReview-Commit-ID: D6SDlNG9EIf

--HG--
extra : rebase_source : df9cb70dcf3cdb26342a324c6292b0c3cb37de3d
2017-06-02 16:19:33 -04:00
Kyle Machulis
2902c3f037 Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg
MozReview-Commit-ID: GQVHEeQp1dx

--HG--
extra : rebase_source : d421a613434be2bcca1120cfffb92ed9f20ba9d4
2017-06-01 15:33:23 -07:00
Ryan VanderMeulen
a185080885 Merge inbound to m-c. a=merge 2017-06-01 11:54:38 -04:00
Shih-Chiang Chien
e7a014adc4 Bug 1015466 - Part 3, PHttpBackgroundChannel lifecycle management. r=mayhemer
PHttpBackgroundChannel is created by content process because PBackground IPDL
can only be initiated from content process. The background channel deletion is
controlled by chrome process while PHttpChannel is going to be closed or canceled.

BackgroundChannelRegistrar is introduced for pairing HttpChannelParent and
HttpBackgroundChannelParent since they are created over different IPDL
asynchronously.

nsIParentRedirectingChannel.continueVerification is introduced to asynchronously
wait for background channel to be established on the new channel during the
Redirect2Verify phase.

MozReview-Commit-ID: 41l8ivan8iA

--HG--
extra : rebase_source : b8b6d7e7c037efaa9fc13df14191205c603e833a
2017-04-24 11:09:35 +08:00
Shih-Chiang Chien
c878e800ea Bug 1015466 - Part 1, skeleton of PHttpBackgroundChannel. r=mayhemer
PHttpBackgroundChannel is introduced to deliver OnStopRequest/OnTransportAndData/OnProgress/OnStatus on background thread.
FlushedForDiversion/DivertMessages is moved to PHttpBackgroundChannel to ensure no more channel event are delivered after these two messages on the background channel.
OnStartRequestSent is introduced to synchronize the execution order between OnStartRequest (main thread IPC) and all other messages on PHttpBackgroundChannel.

MozReview-Commit-ID: HfqvPML6EKw

--HG--
extra : rebase_source : 423709763e1abf1362347bc2d3141e2d33aed46a
2017-05-15 16:01:10 +08:00
Alex Gaynor
d27dc0ba0b Bug 1358223 - Part 1 - On Windows and macOS hardcode the minimum content sandbox level at 1. r=bobowen,haik,jimm
If the "security.sandbox.content.level" preference is set to a value less than
1, all consumers will automatically treat it as if it were level 1. On Linux and
Nightly builds, setting the sandbox level to 0 is still allowed, for now.

MozReview-Commit-ID: 9QNTCkdbTfm

--HG--
extra : rebase_source : cd5a853c46a5cd334504b339bef8df30a3cabe51
2017-05-12 17:04:42 -04:00
Sebastian Hengst
fd03aa5bc8 Backed out changeset 4e283b54baa6 (bug 1358223) for build bustage on Android at dom/ipc/ContentChild.cpp:21. r=backout 2017-05-31 21:34:13 +02:00
Alex Gaynor
39f34ea898 Bug 1358223 - Part 1 - On Windows and macOS hardcode the minimum content sandbox level at 1. r=bobowen,haik,jimm
If the "security.sandbox.content.level" preference is set to a value less than
1, all consumers will automatically treat it as if it were level 1. On Linux and
Nightly builds, setting the sandbox level to 0 is still allowed, for now.

MozReview-Commit-ID: 9QNTCkdbTfm

--HG--
extra : rebase_source : 1a26ffc5b9f80e6df4c37c23f506e907ba44053a
2017-05-12 17:04:42 -04:00
Kearwood Gilbert
eb3becc0b0 Bug 1362213 - Implement chrome-only API to manage VR sessions r=daoshengmu,kanru,smaug
- Added new chrome-only webidl methods to be used by browser UI and WebExtensions
- Implemented bitmasked group visibility for VR sessions to enable switching
  between chrome and regular content presentations.
- Implemented throttling mechanism to avoid runaway, unthrottled render loops
  for VR sessions that are hidden by group visibility bitmasks or due to
  lower level platform VR events, such as during the Oculus
  "Health and Safety Warning".
- Simplified the PVRManager IPC protocol while extending it to support
  VR session groups and later WebVR content performance profiling API's.
- Removed the last WebVR related sync IPC call.


MozReview-Commit-ID: BMEIPyYeEbq

--HG--
extra : rebase_source : 47d3682cad3d913504175b7d4c3e9d992236f097
2017-05-08 16:01:36 -07:00
Andrea Marchesini
6287e1d209 Bug 1366316 - Separate thread for IPCBlobInputStream actors - part 4 - monitoring child processes, r=smaug 2017-05-31 07:41:11 +02:00
Andrea Marchesini
dd8eddb26f Bug 1366316 - Separate thread for IPCBlobInputStream actors - part 1 - actor migration, r=smaug 2017-05-31 07:41:10 +02:00
Kartikaya Gupta
b7ee577f62 Merge m-c to graphics, a=merge
MozReview-Commit-ID: 8IWAJNO52ry
2017-05-29 08:28:04 -04:00
Kartikaya Gupta
d5c99e4ebb Bug 1367837 - Implement some APZ test util APIs for webrender. r=botond,dvander
This implements some methods exposed on DOMWindowUtils and used by
reftests, for the WebRender codepath. The implementation is very similar
to the implementation in LayerTransactionParent.

MozReview-Commit-ID: HP8OxzIzS7P
2017-05-28 07:48:36 -04:00
Ryan VanderMeulen
e38fed0cd1 Merge inbound to m-c. a=merge 2017-05-25 21:30:20 -04:00
Aaron Klotz
f2c01f6b99 Bug 1354077: Fix some problems with RegGetValue call failing due to failed type checking; r=jimm
MozReview-Commit-ID: 5iTEAW9CyJS

--HG--
extra : rebase_source : 2a1d5b4684e2fba9913e7d185738c3f5d711da8f
2017-05-25 14:08:55 -06:00
Aaron Klotz
0c65052029 Bug 1367715: Convert IsProxy check to assertion to avoid unnecessary and potentially incorrect off-main-thread QIs on release builds; r=jimm
MozReview-Commit-ID: 9WYbiW7pBjh

--HG--
extra : rebase_source : 7b04e9959f1ba2c5dcfeff384f3e3cf32b445c39
2017-05-25 12:10:30 -06:00
Honza Bambas
b852ed009a Backout of 7f28c1084c47 (bug 1319111) for security checks breakage, r=me 2017-05-25 18:16:02 +02:00
Ryan VanderMeulen
d3f265330e Merge m-c to autoland. a=merge 2017-05-25 16:44:01 -04:00
Kan-Ru Chen
e900659346 Bug 1367176 - Expose promise typedef to public so it can be used outside of actor. r=billm
MozReview-Commit-ID: JRlPR2rs3ij

--HG--
extra : rebase_source : 7e23178f678d0fffd99d21bbf4fdbb954792fa0e
2017-05-24 13:06:35 -04:00
Michael Layzell
b0485183ce Bug 1365719 - Add a IPC_SYNC_RECEIVE_MS probe to record time taken to process sync IPC messages in the target process, dr=bsmedberg, r=ehsan
MozReview-Commit-ID: 4TOlSFX68Vn
2017-05-26 16:18:28 -04:00
Petr Sumbera
6e46696806 Bug 1368093 - Fix name collision between Solaris queue(9F) and C++ std::queue. r=billm 2017-05-26 09:10:59 -07:00
Thomas Nguyen
4fcb94e968 Bug 1351146 - P1 - Add more information to redirect chains. r=dragana
In order to provide more details context of how client arrived at the unsafe
page, particularly in redirect case, we may have to add more information to
redirect chains including:
- referrer (if any)
- remote address.
- URL

We may want to use an idl interface instead of nsIPrincipal to store these
information

MozReview-Commit-ID: 3Uh4r06w60C
2017-05-25 19:42:00 +02:00
David Parks
f2774deb20 Bug 1363290 - Part 3: Proxy win32's SetCursorPos for plugins in chrome process. r=jimm, r=jed
SetCursorPos is used by Flash's relative cursor motion behavior.  It is blocked by the plugin sandbox.  This patch allows it to run by proxying it on the main process.

--HG--
extra : histedit_source : 85515d398c0c107c2258185c0591a943b26e724a
2017-05-16 14:47:09 -07:00
Ehsan Akhgari
b1a6df0904 Backout the experimental patch for bug 1366156 because it didn't help 2017-05-24 09:46:39 -04:00
Andrea Marchesini
bf4efb28a8 Bug 1359718 - Get rid of PBlob - part 6 - removed unused inputStream params, r=smaug 2017-05-23 18:07:18 +02:00
Andrea Marchesini
281c7e8cdd Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
bc8f9a2827 Bug 1359718 - Get rid of PBlob - part 1 - Remove PBlobStream, r=smaug, r=kanru 2017-05-23 18:04:27 +02:00
Andrea Marchesini
28479706ea Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Ryan VanderMeulen
0bd37c1ea1 Merge inbound to m-c. a=merge 2017-05-23 18:12:57 -04:00
Ryan VanderMeulen
27fd4cc7e2 Merge inbound to m-c. a=merge 2017-05-23 18:11:35 -04:00
Ehsan Akhgari
1040ee9f65 Bug 1347035 - Store the maximum touch points for each tab child on the object instead of querying it synchronously from the parent actor when neeeded; r=smaug ipc-r=kanru 2017-05-23 17:00:09 -04:00
Honza Bambas
2dfe5d94b8 Bug 1319111 - Expose 'result principal URI' on LoadInfo as a source for NS_GetFinalChannelURI (removes some use of LOAD_REPLACE flag). r=bz 2017-05-23 08:09:00 -04:00