Граф коммитов

3733 Коммитов

Автор SHA1 Сообщение Дата
Kate McKinley c57d400961 Bug 1246540 - HSTS Priming Proof of Concept. r=ckerschb, r=mayhemer, r=jld, r=smaug, r=dkeeler, r=jmaher, p=ally
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

MozReview-Commit-ID: ES1JruCtDdX

--HG--
extra : rebase_source : 2ac6c93c49f2862fc0b9e595eb0598cd1ea4bedf
2016-09-27 11:27:00 -04:00
Aaron Klotz 9772dd793a Bug 1306014: Modify ipc/mscom/moz.build to only build essentials when a11y is disabled in build config; r=jimm
MozReview-Commit-ID: 4B08546SS4w

--HG--
extra : rebase_source : bded5176afaf99cb681c1be4b70edb9457ed2028
2016-09-28 14:09:07 -06:00
Carsten "Tomcat" Book 762cd18602 Merge mozilla-central to autoland 2016-09-28 16:52:13 +02:00
Makoto Kato 8edd5c2fd5 Bug 1305690 - GetCurrentProcessArchitecture should return cpu type on aarch64. r=billm
MozReview-Commit-ID: 7kwpZ6cbqfk

--HG--
extra : rebase_source : 65c4a9a9e36948ecaec52abbd07bc94d66f867d3
2016-09-27 20:42:29 +09:00
Josh Matthews ee501c8947 Bug 1167730 - Make nsTemporaryFileStream serializable. r=baku 2016-09-23 10:34:42 -04:00
Aaron Klotz 98faee3572 Bug 1304876: Fix 64-bit build failure in IPC TestDataStructures test; r=billm
MozReview-Commit-ID: G0b0mvV8gus
2016-09-19 13:15:39 -06:00
Ehsan Akhgari 5404c2dc93 Bug 1297687 - Part 2: Allow specifying an OriginAttribute when creating an expanded principal; r=bholley 2016-09-22 13:27:40 -04:00
David Anderson e87d2f8355 Make ipc::Shmem hold a strong reference to underlying SharedMemory. (bug 1303426 part 1, r=billm)
--HG--
extra : rebase_source : 32e182cf5fca848144f472b54a100547a3414f60
2016-09-21 22:40:20 -07:00
Andrea Marchesini db15f776a7 Bug 1288997 - memory blob should not be shared across processes - part 1 -PSendStream should use nsIContentChild, r=jld, f=bkelly 2016-09-21 12:27:26 +02:00
Ting-Yu Chou 823913da1e Bug 1301022 - Add an API for annotating pending IPC messages. r=ted
MozReview-Commit-ID: GiAMUnjYjvI

--HG--
extra : rebase_source : fdae4651f902f2d540b584c584de07f30a00bb8f
2016-09-20 14:10:43 +08:00
Christoph Kerschbaumer 8500d497a7 Bug 1297338 - Extend LoadInfo with a PrincipalToInherit member. r=bz 2016-09-20 08:35:45 +02:00
David Anderson df6a78744b Allow passing an empty Endpoint over IPDL. (bug 1302009, r=billm) 2016-09-19 19:18:20 -07:00
David Anderson f8b7f5c0ac Don't allow double-closing of IPC channels. (bug 1301481, r=billm) 2016-09-19 19:17:09 -07:00
Nicholas Nethercote d6cfd7634f Bug 1302309 - Cast some MaybeDestroy() calls to void. r=billm.
Most calls to MaybeDestroy() have their return value checked, but those that
take a T__None argument legitimately don't. Coverity gets upset by this, so
let's cast those calls to void to make Coverity happier.

--HG--
extra : rebase_source : 798c852371a682372c61cae953cc13c160b9ff9a
2016-09-13 13:48:42 +10:00
Bill McCloskey bb0a94054a Bug 1303499 - Fix broken IPDL tests (r=me, NPOTB) 2016-09-16 20:35:11 -07:00
Haik Aftandilian 9de1898bc2 Bug 1290619 - Content sandbox rules should use actual profile directory, not Profiles/*/ regex's; r=jimm
Passes the profile dir to the content process as a -profile CLI
option so that the correct profile dir can be used in the OS X content
sandbox rules.  Only enabled on OS X for now.

On Nightly, profile directories will now be read/write protected
from the content process (apart from a few profile subdirectories) even
when they don't reside in ~/Library.

xpcshell tests invoke the content process without providing a
profile directory. In that case, we don't need to add filesystem
profile dir. read/write exclusion rules to the sandbox.

This patch adds two new macros to the content sandbox rule set:
|profileDir| holds the path to the profile or the emptry string;
|hasProfileDir| is a boolean (1 or 0) that indicates whether or
not the profile directory rules should be added. If |hasProfileDir|
is 0, profile directory exclusion rules don't need to be added
and |profileDir| is not used.

MozReview-Commit-ID: rrTcQwTNdT

--HG--
extra : rebase_source : 3d5b612c8eb3a1d0da028eba277cd9d6f0c9ac00
2016-08-30 13:32:21 -07:00
Carsten "Tomcat" Book 0f2c669a48 merge mozilla-inbound to mozilla-central a=merge 2016-09-09 12:02:43 +02:00
Aaron Klotz fec23fc114 Bug 1301217: Ensure that RegisteredProxy objects are MTA-aware; r=jimm
MozReview-Commit-ID: HStX3pBl5ly
2016-09-07 16:10:45 -06:00
Aaron Klotz 23956d09e2 Bug 1301184: Notify the profiler and hang monitor when we're executing APCs; r=jimm
MozReview-Commit-ID: B4nTiAf9GNk
2016-09-06 14:39:37 -06:00
Kacper Michajlow 47fc1444d9 Bug 1297794 - Fix SetEntriesInAcl failure on non-English Windows version. r=aklotz
MozReview-Commit-ID: 4FJBtUBjPEu

--HG--
extra : rebase_source : 4463d4d897587e9a6427252b4c373b38c2c6331d
2016-08-24 20:57:16 +02:00
Alexandre Lissy e458f6fbc5 Bug 1301010 - Add missing Unused.h, StorageManager.h r=fabrice
MozReview-Commit-ID: 3ehLQTtBChb
2016-09-07 18:52:58 +02:00
Nicholas Nethercote 34dcc7b852 Bug 1299384 - Use MOZ_MUST_USE with NS_warn_if_impl(). r=erahm.
This change avoids lots of false positives for Coverity's CHECKED_RETURN
warning, caused by NS_WARN_IF's current use in both statement-style and
expression-style.

In the case where the code within the NS_WARN_IF has side-effects, I made the
following change.

> NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));
> -->
> Unused << NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));

In the case where the code within the NS_WARN_IF lacks side-effects, I made the
following change.

> NS_WARN_IF(!condWithoutSideEffects);
> -->
> NS_WARNING_ASSERTION(condWithoutSideEffects, "msg");

This has two improvements.
- The condition is not evaluated in non-debug builds.
- The sense of the condition is inverted to the familiar "this condition should
  be true" sense used in assertions.

A common variation on the side-effect-free case is the following.

> nsresult rv = Fn();
> NS_WARN_IF_(NS_FAILED(rv));
> -->
> DebugOnly<nsresult rv> = Fn();
> NS_WARNING_ASSERTION(NS_SUCCEEDED(rv), "Fn failed");

--HG--
extra : rebase_source : 58788245021096efa8372a9dc1d597a611d45611
2016-09-02 17:12:24 +10:00
Bob Owen add3717103 Bug 1287426 Part 2: Remove uneeded base/basictypes.h include from WindowsMessageLoop.h r=jimm
MozReview-Commit-ID: AZ9cUmxHk4R
2016-09-06 08:57:20 +01:00
Cykesiopka f821d7aff6 Bug 1299743 - Remove unused XPCShellDirProvider class from XPCShellEnvironment.cpp. r=mrbkap
MozReview-Commit-ID: 5QULAP0NtSo

--HG--
extra : rebase_source : 4c66d52d5267aef326fa70e5299b0339428c3ab2
2016-09-03 22:46:13 +08:00
Nathan Froyd 499fc0976b Bug 1297804 - part 4 - avoid array bounds checks in DestroySubtree loops; r=billm
The IPDL compiler generates code like this in DestroySubtree methods:

    // Recursively shutting down PAPZ kids
    nsTArray<PAPZChild*> kids((mManagedPAPZChild).Count());
    // Accumulate kids into a stable structure to iterate over
    ManagedPAPZChild(kids);
    for (uint32_t i = 0; (i) < ((kids).Length()); (++(i))) {
        // Guarding against a child removing a sibling from the list during the iteration.
        if ((mManagedPAPZChild).Contains(kids[i])) {
            (kids[i])->DestroySubtree(subtreewhy);
        }
    }

There are three problems with this code:

1) We initialize |kids| with a capacity, which is wasted work;
   ManagedPAPZChild() is going to resize the array for us anyway.
2) We're constantly reading from |kids.Length()| in the loop, when we
   only really need to read from it once.
3) We're repeatedly accessing kids[i], and doing needless bounds checks.

Let's fix those three problems.
2016-09-02 16:14:28 -04:00
Nathan Froyd 2d2dec7fe4 Bug 1297804 - part 3 - avoid array bounds checking when writing nsTArray<T> to messages; r=billm
We know we're not going to perform out-of bounds accesses here.
2016-09-02 16:14:28 -04:00
Nathan Froyd 4de7ea1914 Bug 1297804 - part 2 - eschew array bounds checking in nsTArray IPDL-generated code, writer-side; r=billm
For better or worse, the IPDL compiler, for protocols that send or
receive arrays, generates Write methods for transferring those arrays,
rather than going through the standard ParamTraits specializations.
These generated methods perform unnecessary bounds checks when accessing
elements; such checks can be safely bypassed because we know the exact
length of all the arrays involved.  (Some compilers are not smart enough
to eliminate the bounds checks on their own.)
2016-09-02 16:14:28 -04:00
Nathan Froyd b086521c81 Bug 1297804 - part 1 - eschew array bounds checking in nsTArray IPDL-generated code, reader-side; r=billm
For better or worse, the IPDL compiler, for protocols that send or
receive arrays, generates Read methods for transferring those arrays,
rather than going through the standard ParamTraits specializations.
These generated methods perform unnecessary bounds checks when accessing
elements; such checks can be safely bypassed because we know the exact
length of all the arrays involved.  (Some compilers are not smart enough
to eliminate the bounds checks on their own.)
2016-09-02 16:14:28 -04:00
Nathan Froyd 25c7ca2c50 Bug 1297804 - part 0 - add a RangedFor stament type to IPDL's code generator; r=billm
This addition makes many of the upcoming patches significantly easier to
write, and enables us to avoid unpleasantness trying to fiddle with
ipdl.py's notions of C++ types.  (For instance, there's no good way,
when you have a type in-hand, to say the moral equivalent of
std::add_pointer<T>::type.)
2016-09-02 16:14:28 -04:00
Nathan Froyd 9d05d5014b Bug 1299594 - part 3 - remove gProtocolMutex; r=billm
It no longer protects any global state, and is therefore pure overhead.
2016-09-02 16:13:50 -04:00
Nathan Froyd 29e8bfeb34 Bug 1299594 - part 2 - remove opened actor tracking from IToplevelProtocol; r=billm
The only thing we needed opened actor tracking for was the ability to
clone all the actors.  But now that we no longer have support for
cloning actors, we no longer need to track the actors that we've cloned,
which makes a number of things significantly simpler.
2016-09-02 16:13:50 -04:00
Nathan Froyd fff9bd3854 Bug 1299594 - part 1 - remove CloneManagees/CloneToplevel code from IPDL; r=billm
CloneOpenedToplevels, which is never called, is the only interesting
caller of CloneToplevel.  And CloneToplevel, in turn, is the only
interesting caller of CloneManagees.  Which means we can ditch all this
code for a decent amount of space savings, both in code and writable
static data (no more useless virtual function entries in vtables).
2016-09-02 16:13:50 -04:00
Nicholas Nethercote b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +10:00
Kan-Ru Chen 99748028a6 Bug 1051567 - Make sure we resend file descriptors for the first chunk of a message. r=billm
Check if the buffers iterator was never consumed. This is a regression
introduced when converting ipc to use BufferList in bug 1262671.

MozReview-Commit-ID: LWAoVlI5CKJ

--HG--
extra : rebase_source : c4f16f4f90f56153c10cf1d9113c4c55748595f0
2016-08-30 18:26:59 +08:00
Nathan Froyd 40d6f37643 Bug 1298462 - tidy ipc/mscom/ files to avoid warnings from clang-cl; r=aklotz
Changing classes to `final` avoids complaints about deleting a class with
virtual functions.  Making destructors private avoids static_asserts from
XPCOM code about refcounted classes with public destructors.

MozReview-Commit-ID: IiPrZln1wvj

--HG--
extra : rebase_source : 5d70eea909e9d8c7f191c465b700b778b7ff564c
2016-08-26 14:26:29 -04:00
Wes Kocher 6c4583e52f Merge m-c to inbound, a=merge 2016-08-29 17:54:53 -07:00
Wes Kocher ecea29f6a3 Backed out changeset 0f53bc1a9aea (bug 1290619) a=merge 2016-08-29 17:40:59 -07:00
Aaron Klotz 63a3869bb8 Bug 1298412: Fix Interceptor construction to use Move semantics for STAUniquePtr instead of pass-by-reference; r=jimm
MozReview-Commit-ID: 8DzeT35Ao4O

--HG--
extra : rebase_source : 14a94903843e54c1c4a4b6c980805ed37d878911
2016-08-26 10:03:17 -06:00
Haik Aftandilian 3c44a5f111 Bug 1290619 - Content sandbox rules should use actual profile directory, not Profiles/*/ regexes. r=jimm
Passes the profile dir to the content process as a -profile CLI option so
that the correct profile dir can be used in the OS X content sandbox rules.
Only enabled on OS X for now.

On Nightly, profile directories will now be read/write protected from the
content process (apart from a few profile subdirectories) even when they
don't reside in ~/Library.

MozReview-Commit-ID: rrTcQwTNdT

--HG--
extra : rebase_source : d91d8939cabb0eed36b640766756548a790a301c
2016-08-25 15:19:52 -07:00
Nathan Froyd ed976e566d Bug 1298882 - ensure mozilla/mscom/Utils.h is included with uniform casing; r=aklotz
We install mozilla/mscom/Utils.h, but include it with an all-lowercased
path in some places.  clang-cl warns about this, and even though this is
Windows-only code and will therefore work, it's better to make
everything consistent.
2016-08-29 21:55:37 -04:00
Nathan Froyd 6d0ffbfa26 Bug 1298840 - declare dependent type with typename in ParamTraits<COMPtrHolder<Interface, _IID>>; r=aklotz
MSVC lets this slide, but clang-cl complains about the missing typename.
2016-08-29 21:47:03 -04:00
Ryan VanderMeulen 1c0c6ec5d4 Merge m-c to inbound. a=merge 2016-08-29 12:56:19 -04:00
Nathan Froyd 286887898c Bug 1297801 - part 4 - use non-null-checked operator new in IPDL code; r=billm
The standard placement new function requires a null check, implicitly
generated by the compiler, on its returned value.  For places we know
don't deal with null pointers, such as all the generated methods of IPDL
code, we can use an overloaded operator new that doesn't require the
null check.
2016-08-29 20:41:22 -04:00
Nathan Froyd 72439d5587 Bug 1297801 - part 3 - make mozilla::ipc::Trigger 4 bytes instead of 8; r=billm
We construct Trigger structures for every IPDL send and recv to run
the (currently defunct) IPDL state machine for each protocol.  These
structures are 64 bits to hold an enum that could be represented in 1
bit and an IPDL message enum that can easily be represented in 31 bits.
Therefore, we can make the Trigger structure smaller by storing the
members as bitfields, rather than full-width integers.  (The message
enums are formed from a 16-bit protocol enum and a 16-bit
protocol-specific message enum; since the protocol enum goes in the
upper bits, we'd need 32768 protocols to overflow the bitfield we're
using in Trigger...a number that we're not going to hit anytime soon.)

This change saves ~15K of space on x86-64 Linux.
2016-08-29 20:41:22 -04:00
Nathan Froyd fda65898ab Bug 1297801 - part 2 - make IPDL Transition functions take an inout parameter for State; r=billm
The calls to IPDL Transition() functions consistently look like:

  Transition(VAR, ..., &VAR);

We can save space by only passing &VAR and deriving the state we're
coming from by loading VAR in Transition itself.  It's not great using
inout parameters here, but we call Transition enough times that this
change saves a reasonable amount of space: about 10K on x86-64 Linux.
The unsightliness of inout parameters here is lessened by the only
callers of Transition being generated code.
2016-08-29 20:41:22 -04:00
Nathan Froyd a8474a5f11 Bug 1297801 - part 1 - commonize the managee->array functions in IPDL generated code; r=billm
There's no reason to generate identical code for every kind of managed
protocol; we can have a single instance that operates on void* and cast
our way to victory.  This change saves ~60K of text on x86-64 Linux.
2016-08-29 20:41:22 -04:00
Kan-Ru Chen c49f09db99 Bug 1297981 - Delete BufferList::FlattenBytes and Pickle::FlattenBytes. r=billm
MozReview-Commit-ID: G3a4DN4Lovi

--HG--
extra : rebase_source : 17818efb7578117b708636d06e6a2f5d14532c94
2016-08-25 17:15:38 +08:00
Makoto Kato 92eed83142 Bug 1288625 - Part 1. Allow compiling of ipc/chromium for Android 64-bit. r=billm
MozReview-Commit-ID: Fyv21xmrGXl

--HG--
extra : rebase_source : 5b1248ee9e9c2ca003c06bd6ef889d632acfea50
2016-07-22 15:28:53 +09:00
Nicholas Nethercote c2306345d5 Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.

The patch also does some associated clean-up.

- Replaces some uses of nsIMemoryReporterCallback with the preferred
  nsIHandleReportCallback typedef.

- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
  parameter names, for consistency.

- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.

- Uses the MOZ_COLLECT_REPORT macro in all suitable places.

Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.

--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Wes Kocher 3343f6c576 Backed out changeset b357fab2feb4 (bug 1290619) for osx e10s crashes a=backout CLOSED TREE 2016-08-24 10:59:04 -07:00
Haik Aftandilian d1e8cf113e Bug 1290619 - Content sandbox rules should use actual profile directory, not Profiles/*/ regex's. r=jimm
Passes the profile dir to the content process as a -profile CLI option so
that the correct profile dir can be used in the OS X content sandbox rules.
Only enabled on OS X for now.

On Nightly, profile directories will now be read/write protected from the
content process (apart from a few profile subdirectories) even when they
don't reside in ~/Library.

--HG--
extra : rebase_source : 7bf426f14f31b35c8b541e6d21183226db9836c7
2016-08-22 11:58:18 -07:00
Ryan VanderMeulen 69113163cf Merge m-c to inbound. a=merge 2016-08-24 09:09:05 -04:00
Cykesiopka a16f7b0f6a Bug 1296316 - Convert nsNSSShutDownObject::CalledFromType to an enum class. r=mgoodwin
enum classes are in general safer than plain enums, and as such should be
preferred.

MozReview-Commit-ID: 1FK89SNhdk4

--HG--
extra : rebase_source : 764c4855026c02d8c9e33ca33637fec54ea5ca31
2016-08-20 23:00:19 +08:00
David Anderson 44a97e25c9 Make BackgroundImpl optional in the GPU process. (bug 1294350 part 7, r=billm) 2016-08-22 22:57:36 -07:00
David Anderson a8c8bf4196 Add crash-report instrumentation to diagnose bug 1293580. r=billm 2016-08-22 22:52:04 -07:00
Kan-Ru Chen 506dfe6ea3 Bug 1264642 - Part 4. Use BufferList to replace raw buffers in StructuredClone. r=baku r=billm r=jorendorff
In JS StructuredClone BufferList<SystemAllocPolicy> is typedef'd to
JSStructuredCloneData and use everywhere in gecko that stores structured
clone data.

This patch changed some raw pointers to UniquePtr<JSStructuredCloneData>
and some to stack allocated JSStructuredCloneData for better life time
management. Some parameters or methods are deleted because of changing
to the new data structure.

MessagePortMessage now has the exactly same structure with
ClonedMessageData. Maybe in the future they can be consolidated.

MozReview-Commit-ID: 1IY9p5eKLgv
2016-08-23 00:40:46 +08:00
Kan-Ru Chen 6f3e6b1234 Bug 1264642 - Part 2. Add BufferList::Extract and Pickle::ExtractBuffers. r=billm
These methods allow us to move some buffers out of a pickle with minimum
copying. It's useful when the IPC deserialized type uses BufferList to
store data and we want to take the buffers from IPC directly.

Borrowing is not suitable to use for IPC to hand out data because we
often want to store the data somewhere for processing after IPC has
released the underlying buffers.

MozReview-Commit-ID: F1K2ZMkACqq
2016-08-23 00:40:45 +08:00
Ryan VanderMeulen 833833b8c5 Merge inbound to m-c. a=merge 2016-08-22 09:40:41 -04:00
Cervantes Yu ade760040e Bug 1295544 - Typo fix of MOZ_CRASHREPORTER build config. r=krizsa
MozReview-Commit-ID: 73DSJTef14E

--HG--
extra : rebase_source : 9d96e86754c455d8cda9d6042d4536f06a676c3a
2016-08-16 19:32:30 +08:00
Nathan Froyd 9c219dbf17 Bug 1296642 - avoid compiling {Read,Write}Sentinel calls in non-sentinel checking builds; r=billm
Pickle::{Read,Write}Sentinel were introduced as a way of catching
problems with corrupted IPDL messages at the point of message
serialization, rather than the point of use of the bad data.  The
checking itself is only done on debug or non-release builds, but the
calls to the functions are compiled in regardless of whether checking is
done.  While LTO could plausibly optimize away all the calls, we don't
have LTO on all of our platforms, particularly mobile.  Therefore, we
should move the non-checking versions of the calls inline, so the
compiler can eliminate those calls entirely, even in non-LTO builds.
2016-08-19 21:22:28 -04:00
Sebastian Hengst 1ab23ac869 Backed out changeset dd26b9ddef2c (bug 1292452) 2016-08-19 10:02:02 +02:00
Wes Kocher a58f8b89a0 Merge m-c to inbound, a=merge 2016-08-18 16:32:58 -07:00
Wes Kocher 66098b3d43 Merge m-c to autoland, a=merge 2016-08-17 17:25:57 -07:00
Aaron Klotz 2745382e59 Bug 1293486: Add tearoff IDispatch handler to mscom interceptor; r=jimm
MozReview-Commit-ID: 9PSbpkNcOOh

--HG--
extra : rebase_source : 13ba9a670a43dc68b7760410fd808e03e1ac6d9c
2016-08-12 12:12:48 -06:00
Aaron Klotz cf36a3119b Bug 1292452: MainThreadHandoff enhancements to support array outparams in IA2; r=jimm
MozReview-Commit-ID: LTxj7fHEoAb
2016-08-08 18:06:51 -06:00
Aaron Klotz 54e228e02f Bug 1296333: Ensure better handling of nullptr and IUnknown in ipc::mscom; r=jimm
MozReview-Commit-ID: H1PvH3PIWdK

--HG--
extra : amend_source : 7d41fb7bfcd2576d316900361d23f966b478e277
2016-08-18 09:48:48 -06:00
Ben Kelly 9d7b33a00b Bug 1293690 P2 Set explicit status levels to fail at when calling WorkerHolder::HoldWorker. r=baku 2016-08-18 07:11:04 -07:00
Aaron Klotz a8b5e5f85f Bug 1273635: Follow-up - ensure that MessageChannel's event is reset when signalled; r=jimm, billm
--HG--
extra : amend_source : ea92d0cfce457517bdc0ce5ca81bede4ec936f89
2016-08-14 15:23:12 -06:00
Nicholas Nethercote ca40b738e4 Bug 1294620 - Use infallible XPIDL attribute getters more. r=erahm.
This makes a lot of code more compact, and also avoids some redundant nsresult
checks.

The patch also removes a handful of redundant checks on infallible setters.

--HG--
extra : rebase_source : f82426e7584d0d5cddf7c2524356f0f318fbea7d
2016-08-12 15:19:29 +10:00
Jonathan Chan 9c62a2c11c Bug 1293739 - Part 1: Rename nsCSSProperty to nsCSSPropertyID. r=dholbert
This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSProperty\b/nsCSSPropertyID/g' -i''

Then:

  hg mv layout/style/nsCSSProperty.h layout/style/nsCSSPropertyID.h

... and finally, manually renaming nsCSSProperty in the include guard in
nsCSSProperty.h.

MozReview-Commit-ID: ZV6jyvmLfA

--HG--
rename : layout/style/nsCSSProperty.h => layout/style/nsCSSPropertyID.h
2016-08-09 16:28:19 -07:00
Igor 175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor a57972337d Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
Kan-Ru Chen b6d880aca1 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
Wes Kocher 37a02d441d Backed out 6 changesets (bug 1264642) for marionette failures a=backout CLOSED TREE
Backed out changeset f0067001c059 (bug 1264642)
Backed out changeset 078e5c447f21 (bug 1264642)
Backed out changeset 7c60fc4144fb (bug 1264642)
Backed out changeset 9f434697ef2e (bug 1264642)
Backed out changeset 06fc278fcedf (bug 1264642)
Backed out changeset 162098402acc (bug 1264642)
2016-08-17 10:49:25 -07:00
Wes Kocher 45575a7f86 Merge m-c to autoland, a=merge
a=release for the webidl hook for a comment-only change

--HG--
extra : amend_source : e590e515ab273d097f88b35be0e5c999502ebdf4
2016-08-16 22:07:30 -07:00
Jonathan Chan 4b87f11bd9 Bug 1293739 - Part 1: Rename nsCSSProperty to nsCSSPropertyID. r=dholbert
This patch is generated by the following commands (note: if you're running
using OS X's sed, which accepts slightly different flags, you'll have to
specify an actual backup suffix in -i, or use gsed from Homebrew):

  hg stat -c \
  | cut -c 3-  \
  | tr '\n' '\0' \
  | xargs -0 -P 8 gsed --follow-symlinks 's/\bnsCSSProperty\b/nsCSSPropertyID/g' -i''

Then:

  hg mv layout/style/nsCSSProperty.h layout/style/nsCSSPropertyID.h

... and finally, manually renaming nsCSSProperty in the include guard in
nsCSSProperty.h.

MozReview-Commit-ID: ZV6jyvmLfA

--HG--
rename : layout/style/nsCSSProperty.h => layout/style/nsCSSPropertyID.h
2016-08-16 18:37:48 -07:00
Gregory Szorc 1794619188 Backed out changesets dcdb85fc5517, 702bca0deee2, 9cKX8gC1ATA (bug 1293739) for build bustage; a=bustage
The merge from inbound to central conflicted with the merge from
autoland to central, it appears. Per tree rules, the commit from the
autoland repo wins and the inbound commit gets backed out.

CLOSED TREE

--HG--
extra : amend_source : 927e1cdfa8e55ccbd873d404d905caf6871c8c4f
extra : histedit_source : 07095868c3f767258e1d7d2645193bf4811b13bb%2Ca49ae5a28bf6e67298b6208ee9254c25a2539712
2016-08-16 17:50:40 -07:00
Aaron Klotz bed7a5af8c Bug 1292452: MainThreadHandoff enhancements to support array outparams in IA2; r=jimm
MozReview-Commit-ID: LTxj7fHEoAb

--HG--
extra : histedit_source : cbf34c9dac0acee94f0a8fe6488567530ededd0d
2016-08-08 18:06:51 -06:00
Jan de Mooij 0ad12515f4 Bug 1292892 part 1 - Stop using JSRuntime outside SpiderMonkey. r=bz,terrence,fitzgen,kanru 2016-08-11 14:39:22 +02:00
Honza Bambas c581ae6d18 Bug 1290975 - turn mListener to a raw ptr, r=billm 2016-08-10 10:53:00 +02:00
Nicholas Nethercote bab6d17ebf Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 386ee4e4ea2ecd8d5001efabc3ac87b4d6c0659f
2016-08-08 10:54:47 +10:00
Nicholas Nethercote e7f10a07fd Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Phil Ringnalda 4083fafafc Backed out 10 changesets (bug 1290116, bug 1293690) for build bustage
CLOSED TREE

Backed out changeset bbc14d107fca (bug 1290116)
Backed out changeset a81b6ce5c25f (bug 1290116)
Backed out changeset e0b9c25b6125 (bug 1290116)
Backed out changeset 8e9a9ba04ce5 (bug 1290116)
Backed out changeset 2d5ad5e9ed20 (bug 1290116)
Backed out changeset eb7da0dbfc72 (bug 1290116)
Backed out changeset 6a4e8c92faae (bug 1290116)
Backed out changeset 0342d98afa10 (bug 1293690)
Backed out changeset d84b0768f0ce (bug 1293690)
Backed out changeset f9f62ade9508 (bug 1293690)
2016-08-17 21:16:43 -07:00
Ben Kelly fa520e1fdd Bug 1293690 P2 Set explicit status levels to fail at when calling WorkerHolder::HoldWorker. r=baku 2016-08-17 20:01:35 -07:00
Kan-Ru Chen 0db1ae055b Bug 1264642 - Part 4. Use BufferList to replace raw buffers in StructuredClone. r=baku,billm,jorendorff
In JS StructuredClone BufferList<SystemAllocPolicy> is typedef'd to
JSStructuredCloneData and use everywhere in gecko that stores structured
clone data.

This patch changed some raw pointers to UniquePtr<JSStructuredCloneData>
and some to stack allocated JSStructuredCloneData for better life time
management. Some parameters or methods are deleted because of changing
to the new data structure.

MessagePortMessage now has the exactly same structure with
ClonedMessageData. Maybe in the future they can be consolidated.

MozReview-Commit-ID: 1IY9p5eKLgv

--HG--
extra : rebase_source : 59a1f04de0d09709e9dc71a68c33025a6c13731c
2016-04-22 18:04:20 +08:00
Kan-Ru Chen 43631b1c31 Bug 1264642 - Part 2. Add BufferList::Extract and Pickle::ExtractBuffers. r=billm
These methods allow us to move some buffers out of a pickle with minimum
copying. It's useful when the IPC deserialized type uses BufferList to
store data and we want to take the buffers from IPC directly.

Borrowing is not suitable to use for IPC to hand out data because we
often want to store the data somewhere for processing after IPC has
released the underlying buffers.

MozReview-Commit-ID: F1K2ZMkACqq

--HG--
extra : rebase_source : eb67256e78f16189a62f441300e0dd06fe6ed687
2016-07-21 17:04:12 +08:00
Kyle Huey cf5845e98a Bug 1274431: Fix some non-unified build issues. r=jld 2016-08-05 12:00:19 -07:00
Aaron Klotz 2bbffe8138 Bug 1273635: Enable alertable waits in content process main thread; r=jimm
MozReview-Commit-ID: 2qGdGj41M0n

--HG--
extra : rebase_source : e404ba43a47151d38330052c9ac93e7b252ad0f4
2016-08-03 11:54:35 -06:00
David Anderson 7bdb79f9ac Generate template-friendly value readers for IPDL unions. (bug 1288259 part 1, r?=billm)
--HG--
extra : rebase_source : 7376052d8a50427ab64205246463917fbd0e0d61
2016-08-04 11:13:38 -07:00
Alexandre Lissy 0af5b943b6 Bug 1284674 - Remove NUWA r=cyu
MozReview-Commit-ID: GyMRNzOBKw6

--HG--
extra : rebase_source : 293af1cd55f2035ce6a99f4ebf144059c32a2b8f
2016-08-02 14:54:00 +02:00
Cervantes Yu 8a0ce84d5e Bug 1253575 - Fallback to DuplicateHandle() when base::OpenPrivilegedProcessHandle() fails when starting a child process. r=krizsa
MozReview-Commit-ID: 2nglWFJgfja

--HG--
extra : rebase_source : 01d7b167bc0573c72aa8ef6dac8fce6bb5d4eaef
2016-06-23 17:50:37 +08:00
Cervantes Yu 8a084acd4c Bug 1266440 - Remove diagnostic funciton mozilla::ipc::AnnotateProcessInformation() that contains PII. r=krizsa
MozReview-Commit-ID: AJyNT68zJlF
2016-08-01 18:41:09 +08:00
Aaron Klotz fc25b0f50c Bug 1287875: Don't try to obtain NS_APP_CONTENT_PROCESS_TEMP_DIR unless MOZ_CONTENT_SANDBOX is defined; r=haik
MozReview-Commit-ID: Li1I4CtmXvE

--HG--
extra : rebase_source : 72357591259f261b5310e9679f752d9c949951f8
2016-07-29 12:20:01 -06:00
Carsten "Tomcat" Book 37be51f16a merge mozilla-inbound to mozilla-central a=merge 2016-07-28 17:43:03 +02:00
Iris Hsiao f9707fb68a Backed out changeset 48d06bcb9c65 (bug 1273635) for Mochitest failures 2016-07-28 14:25:47 +08:00
Yoshi Huang 84039380cc Bug 1287073 - remove SEC_FORCE_INHERIT_PRINCIPAL_WAS_DROPPED from nsILoadInfo r=sicking 2016-07-28 15:56:32 +08:00
David Anderson a733ab7fa3 Add the GPU process as a sandbox broker peer. (bug 1289895, r=bobowen) 2016-07-27 23:17:54 -07:00
Makoto Kato 534829a9e2 Bug 1289500 - Don't load GTK IM module on content process. r=masayuki
Now content sandbox process is enabled.  Since uim-mozc uses vfork, it causes sandbox violation.  It is unnecessary to load IM module on content process becasue we don't use GTK IM APIs on content process.

MozReview-Commit-ID: GrPlmazzEMd

--HG--
extra : rebase_source : e12ec563807627a7fb84b2ca56eaa552aac22643
2016-07-27 10:24:42 +09:00
Carsten "Tomcat" Book 25aa8617fc Backed out changeset 1825b8fa636a (bug 1246540) for bustage
--HG--
extra : rebase_source : 45defacae713b2c2f75813fea6f2f289ebc481cd
2016-07-26 12:52:15 +02:00
Fabrice Desré e415e8f407 Bug 1289316 - Update ProcessUtils_linux with PlatformHandle changes r=valentin 2016-07-26 03:47:18 -07:00
Bob Owen 22830b7f8f Bug 1287984: Add rule to allow content process to duplicate handles to other non-broker processes. r=jimm
MozReview-Commit-ID: A79P9G9t7Ax

--HG--
extra : transplant_source : %C2%0A-%FB%7E%AF%99%95%C7%AF%A6%21%BC%18%D4a%9C%24z%8C
2016-07-20 14:41:18 +01:00
Kate McKinley 01cbd73591 Bug 1246540 - HSTS Priming Proof of Concept. r=ckerschb,r=mayhemer,r=jld,r=smaug,r=dkeeler,r=jmaher,p=ally
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

(r=ckerschb,r=mayhemer,r=jld,r=smaug,r=dkeeler,r=jmaher,p=ally)
2016-07-25 12:37:00 +02:00
Xidorn Quan 8d8f13a7d5 Bug 1264566 followup - Fix build on VS2015u3.
MozReview-Commit-ID: Bi58Q1NCQD
2016-07-26 09:45:44 +10:00
Carsten "Tomcat" Book 0a5622c093 Backed out changeset 640247e978ba (bug 1246540) for bustage 2016-07-24 15:59:31 +02:00
Kate McKinley 547500d5a7 Bug 1246540 - HSTS Priming Proof of Concept. r=honzab
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

(r=ckerschb,r=mayhemer,r=jld,r=smaug,r=dkeeler,r=jmaher,p=ally)
2016-07-22 18:35:00 +02:00
Wei-Cheng Pan fd87664d8e Bug 1264566 - Part 2: Refactor all usage of FileDescriptor. r=valentin
Callers should use a UniquePtr to hold the platform handle.

MozReview-Commit-ID: 6BWnyAf4b3a

--HG--
extra : transplant_source : %26%CA%0D%28%08%9BT%97Z%A1%3Dq%CD%21%A1_%EFE%83%0E
extra : histedit_source : 77f8ed3d0fdec6cce0c95469130ade0fb547bb91
2016-05-27 16:12:51 +08:00
Wei-Cheng Pan 885cdcfe3a Bug 1264566 - Part 1: Refactor FileDescriptor to fix leaks in content processes. r=valentin, r=baku
Now FileDescriptor takes the ownership of the platform handle, in both parent
and content processes.
Copying will duplicate the underlying handle.
It also comes with a move constructor to avoid duplicating if possible.

The getter will duplicate a new handle, so a UniquePtr is needed to hold the
duplicated handle.

MozReview-Commit-ID: DgvjmTI4tpf

--HG--
extra : transplant_source : %8A%CA%96l%40iZ%08%D1J%F3%8C%F2%D0%8B6%E5%9EH%13
extra : histedit_source : ee9856a5a1b650663d65380847712691ac8e84bf
2016-05-27 15:58:51 +08:00
Carsten "Tomcat" Book 336105a0de merge mozilla-inbound to mozilla-central a=merge 2016-07-22 11:58:02 +02:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Carsten "Tomcat" Book 4a64baa9d4 merge mozilla-inbound to mozilla-central a=merge 2016-07-21 16:24:36 +02:00
Chris Peterson b175c9fdd5 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Aaron Klotz 52f2033824 Bug 1277075: Add MainThreadRuntime class to mscom glue, enabling safe initialization of COM security and exception handlers; r=jimm
MozReview-Commit-ID: 9Ig9wb4KVps

--HG--
extra : rebase_source : 6a8da83dbdae9b7407598997ffbe56eeca3a4d26
2016-07-20 11:10:46 -06:00
Carsten "Tomcat" Book 021bec0a4e Merge mozilla-central to mozilla-inbound 2016-07-20 11:35:42 +02:00
Carsten "Tomcat" Book 8428cd56e3 merge mozilla-inbound to mozilla-central a=merge 2016-07-20 11:20:15 +02:00
David Anderson 6aca1d9865 Use Endpoints for content-process ImageBridges. (bug 1287366 part 2, r=billm)
--HG--
extra : rebase_source : 388c44e8df0ff45eb32e12d2b98c654cb0592bf0
2016-07-20 00:18:30 -07:00
Iris Hsiao a024afd017 Backed out changeset 26fe03ac12be (bug 1277075) for Windows build bustage 2016-07-19 12:36:27 +08:00
Aaron Klotz 20b5649ee9 Bug 1277075: Add MainThreadRuntime class to mscom glue, enabling safe initialization of COM security and exception handlers; r=jimm
MozReview-Commit-ID: BKDnWQLCYGI

--HG--
extra : rebase_source : 091ed78a5b30c674ad8a7964b0ae5ffe66e905e5
2016-07-14 16:54:53 -06:00
Aaron Klotz f92a107e86 Bug 1287002: Add DynamicallyLinkedFunctionPtr helper class to mscom glue; r=jimm
MozReview-Commit-ID: JnsXxi3oQ9r

--HG--
extra : rebase_source : fd0806fcd47b3d060236db00277415a4cf07e9c7
2016-06-03 12:56:24 -06:00
Aaron Klotz 67768a9eb7 Bug 1287002: Utility functions for Microsoft COM glue; r=jimm
MozReview-Commit-ID: DTH2lIvKjX9

--HG--
extra : rebase_source : e7e4e32f2175322c4ab20a205e37f6b2d34822f8
2016-07-14 16:55:31 -06:00
Aaron Klotz 140fb74701 Bug 1287002: Add RAII class for entering a COM apartment; r=jimm
MozReview-Commit-ID: DEwU3vU1P5P

--HG--
extra : rebase_source : 05f2ce1b51e32e369965c189ead9071b05b6e498
2016-06-03 12:30:31 -06:00
Aaron Klotz c8479a9f4c Bug 1287002: Skeleton moz.build for ipc/mscom directory; r=billm
MozReview-Commit-ID: 4SDUWyTCppL

--HG--
extra : rebase_source : fd96ce17f38936e4e51bcc837c615cc80932f3f5
2016-06-03 12:29:21 -06:00
Aaron Klotz cca20d7ddd Bug 1285356: Fix blocklist initialization regressions; r=bsmedberg
MozReview-Commit-ID: AlWyzVhtPLL

--HG--
extra : rebase_source : 865aff712f83a567c16b81f4512e072a04f7c6df
2016-07-07 17:00:23 -06:00
Thomas Zimmermann 4bee1b2945 Bug 1288077: Forward declare arrays by including 'nsTArrayForwardDeclare.h', r=froydnj
MozReview-Commit-ID: 4RBeHDyhQgr
2016-07-20 17:29:36 +02:00
Ting-Yu Chou 9876771de6 Bug 1287044 - Annotate pending IPC messages when OOM due to too many of them. r=billm
--HG--
extra : rebase_source : 7d4493eb9d88eeb6a2d7912f01020f7831fb8dd3
2016-07-04 13:36:34 +08:00
Aaron Klotz 1e94ab2a1b Bug 1263224: Add ability to wrap a COM method invocation and hand it off to the main thread for execution; r=jimm
MozReview-Commit-ID: EfoH3imaev5

--HG--
extra : rebase_source : d158c737c5ae789ea64bec99ab09b14a92e8c4f3
2016-07-19 13:31:25 -06:00
Aaron Klotz 76d0ed29d4 Bug 1263224: Adds COM interception that allows us to proxy COM invocations; r=jimm
MozReview-Commit-ID: 7dp0Jokg0X3

--HG--
extra : rebase_source : 6c8e2a85b896dbb143dfc5ecd8088b24524689d7
2016-07-27 11:44:56 -06:00
Aaron Klotz 05c8c56d9d Bug 1263224: Add support for thread-safe weak references for COM-based objects; r=jimm
MozReview-Commit-ID: JxVMyDhNPs4

--HG--
extra : rebase_source : 66366989c31c6b4fb1e640e54ba3b81d3729526b
2016-07-19 13:36:55 -06:00
Aaron Klotz 89a48d5463 Bug 1263224: Adds MainThreadInvoker class for posting Asynchronous Procedure Calls to the main thread; r=jimm
MozReview-Commit-ID: 6Be0p0z9CXI

--HG--
extra : rebase_source : ca9f37da2e3da31efbdb1b770d70c7f28f07c37f
2016-07-19 13:35:36 -06:00
Aaron Klotz 62f0203838 Bug 1263224: Smart pointers for passing COM interface pointers around in other apartments; r=jimm
MozReview-Commit-ID: 377VvQ5PMCJ

--HG--
extra : rebase_source : c64ed8690ee42141ebe6aa97ef0b750c7e058647
2016-07-19 13:13:31 -06:00
Aaron Klotz fcdf74c9f5 Bug 1287875: Adds a logging facility for intercepted COM traffic; r=jimm
MozReview-Commit-ID: BfjSAVOo18G

--HG--
extra : rebase_source : 70dd4a9fc6464f4168b0e97554efc8c8c416fb58
2016-07-14 17:11:33 -06:00
Aaron Klotz a0b2e7cafa Bug 1286986: Add glue to enable process-local registration of COM proxies at runtime; r=jimm
MozReview-Commit-ID: 7VTCPQa90Vv

--HG--
extra : rebase_source : 58808455042378883a4df8f97010702d03824e00
2016-07-27 11:45:08 -06:00
Aaron Klotz 85608bd12a Bug 1273635: Enable alertable waits in content process main thread; r=jimm
MozReview-Commit-ID: 2qGdGj41M0n

--HG--
extra : rebase_source : 894ec7ef23b18fd2ed72bc909bc2c743aedaf40c
2016-05-11 12:49:49 -06:00
Aaron Klotz b99626af7a Bug 1261107: Adds code to marshal a Microsoft COM object and transfer its serialized proxy across IPDL; r=billm,jimm
MozReview-Commit-ID: BpSpue4Fq6G

--HG--
extra : rebase_source : 32a33339b3c6dcd69fadd6d2987bafd2ded9c689
2016-07-27 11:44:29 -06:00
Aaron Klotz 39c0509759 Bug 1261107: Add EnsureMTA class to ipc/mscom/Utils. This class synchronously executes a function on a background thread that resides in Microsoft COM's multithreaded apartment; r=jimm
MozReview-Commit-ID: KTE1VdCYS0O

--HG--
extra : rebase_source : e5dc30a20447830c1c33e4bc7479b56627ad52f9
2016-07-18 13:49:28 -06:00
Aaron Klotz 7f91347e43 Bug 1261107: Add IsCurrentThreadMTA() to ipc/mscom/Utils; r=jimm
MozReview-Commit-ID: 3ezKIAmvZZM

--HG--
extra : rebase_source : 50fc20f3e7fa19c94cdc37afc15e262ac479ac28
2016-07-18 13:47:34 -06:00
Aaron Klotz 6470186455 Bug 1268151: Clean up some dependencies in IPDL headers; r=billm
MozReview-Commit-ID: n0FkC1zcay

--HG--
extra : rebase_source : a56c34e5ab1fe9354be7b586a917b6eecff4cb31
2016-05-17 16:01:25 -06:00
David Anderson 6b2b817ec9 Add a callback for top-level actors to free themselves. (bug 1285364, r=billm)
--HG--
extra : rebase_source : 6954a2b34b521c886fba536cd7bedd5f30b94763
2016-07-13 11:21:58 -07:00
Nicholas Nethercote a913f99107 Bug 1285554 - Remove remnants of widget/qt. r=dougt,mshal.
Because bug 1282866 removed Qt support but missed a bunch of things.
* * *
Bug 1285554 - more

--HG--
extra : rebase_source : c48d2485f1fdf1c961e08d91651bbca41e3a1a53
2016-07-12 09:16:45 +10:00
Alexandre Lissy fd4d75f34b Bug 1285157 - Remove SetTransport(aChannel) for NUWA r=cyu
MozReview-Commit-ID: HR8r9flyJDQ

--HG--
extra : rebase_source : bc0e284f6469292a0495501dc71017902247ddd3
2016-07-07 10:07:24 +02:00
Thomas Zimmermann a8ff73abe9 Bug 1280600: Cleanup Bluetooth config and build scripts, r=glandium
Bluetooth availability depends on available driver; not the base system's
version. This patch separates both. Following other modules, it also moves
search-path setup for BT header files into the affected moz.build scripts.

MozReview-Commit-ID: 2hzjcJVTaLY
2016-07-11 15:16:56 +02:00
Chris Peterson 43c2748f66 Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Benjamin Smedberg bf05496a83 Bug 1282866 - remove widget/qt and other supporting QT code, r=dougt. This patch does not remove all of the checks for MOZ_WIDGET_QT (which are dead code), but that will be a followup mentored bug.
MozReview-Commit-ID: EGqHHhCD7vD

--HG--
extra : rebase_source : a4b9593959dd3ba80189db47eabb056ea207490f
extra : amend_source : a744d833693f0fe7adbea961c00bb5fb55a91580
2016-07-07 12:14:25 -04:00
David Anderson e6a98dc91b Clean up Transport memory management in IPDL. (bug 1283744, r=billm) 2016-07-06 18:51:20 -07:00
stefanh@inbox.com a0c9a2b459 Bug 1283559 - Remove obsolete OS X version checks in ipc/glue and dom/plugins/ipc. r=bsmedberg. 2016-07-06 18:34:05 +02:00
Jan de Mooij 96da4695c8 Bug 1283855 part 25 - Make JS_GC take JSContext instead of JSRuntime. r=terrence 2016-07-06 11:40:20 +02:00
Jan de Mooij 3ffa1fd00d Bug 1283855 part 7 - Make JS_SetGCZeal take JSContext instead of JSRuntime. r=sfink 2016-07-05 11:06:05 +02:00
Jan de Mooij 31f7512e9f Bug 1283855 part 5 - Make warning reporter APIs take JSContext instead of JSRuntime. r=arai 2016-07-05 11:06:05 +02:00
Andi-Bogdan Postelnicu 83208c5032 Bug 1283032 - initialize members from RunnableMethod in constructor. r=billm
MozReview-Commit-ID: L6tAqI1ci1b

--HG--
extra : rebase_source : 2dd6d1a121264a46aca958d468fc2a7fd92bab03
2016-07-01 16:05:28 +03:00
Kyle Huey 902d2d23ef Bug 1283327: Factor out SynchronouslyCreatePBackground. r=billm 2016-06-30 13:54:06 -07:00
Chih-Yi Leu 04356f1b32 Bug 1282993 - Fix build error in Platform which don't support gamepad API. r=baku
--HG--
extra : amend_source : e53f5bcb7815716d5fa585b53b0dca00665a5718
2016-06-29 20:39:00 +02:00
Alexandre Lissy d70c1609d8 Bug 1282559 - Followup for 1277705 and remove SetHandle() on Gonk r=billm
MozReview-Commit-ID: 2Xzl5UBcUrV

--HG--
extra : rebase_source : 9bbf1d05ee64c681d735ddc13b58bba4b56efc51
2016-06-27 22:32:44 +02:00
Chih-Yi Leu 8733310923 Bug 1221730 - Change GamepadServiceTest into webidl. r=qdot, r=baku
--HG--
extra : rebase_source : 8e04725e80467a17d1a1a775f791782abe842c1b
2016-06-28 00:26:00 +02:00
Chih-Yi Leu 42a49e9e8c Bug 1221730 - Move gamepad API to PBackground. r=qdot, r=baku
--HG--
extra : rebase_source : 5ad6d31a770d0d7b1b10d6aebf693ed24fc956ca
2016-06-28 00:25:00 +02:00
Nathan Froyd d448beedaf Bug 1282141 - compensate for arc4random_buf not being available on Android; r=jld
As a followup to the recent patch that fixed warnings in this area, I
discovered that arc4random_buf actually isn't available on
Android (?)...possibly only when compiling with recent NDKs.  This
change enables us to link successfully, as we can use libevent's
home-grown implementation.
2016-06-27 22:41:32 -04:00
Kershaw Chang aa2bd5ea05 Bug 1256595 - Add frameOuterWindowID in nsILoadInfo, r=billm 2016-06-27 02:42:00 +02:00
Bill McCloskey c1f8d7875e Bug 1277705 - Simplify child_thread (r=dvander) 2016-06-24 13:16:49 -07:00
Bill McCloskey ea68b7ab4e Bug 1277705 - Remove result_codes (r=dvander) 2016-06-24 13:16:40 -07:00
Bill McCloskey f70e677000 Bug 1277705 - Remove some child_process code (r=dvander) 2016-06-24 13:16:31 -07:00
Bill McCloskey 0a5b384f55 Bug 1277705 - Remove more notification-related files (r=dvander) 2016-06-24 13:16:22 -07:00
Bill McCloskey db00162c58 Bug 1277705 - Remove child_process_info (r=dvander) 2016-06-24 13:16:14 -07:00
Bill McCloskey 4045bfae0a Bug 1277705 - Remove Message::Sender interface (r=dvander) 2016-06-24 13:16:03 -07:00
Bill McCloskey ae244aacff Bug 1277705 - Remove child_process_host iter (r=dvander) 2016-06-24 13:15:55 -07:00
Bill McCloskey cb8a9c03a3 Bug 1277705 - Remove waitable_event_watcher (r=dvander) 2016-06-24 13:15:41 -07:00
Bill McCloskey e2d2de1ae8 Bug 1277705 - Remove chromium notification service (r=dvander) 2016-06-24 13:15:20 -07:00
Bill McCloskey f20d7b5ed6 Bug 1277705 - Remove ChildProcessHost::InstanceCreated (r=dvander) 2016-06-24 13:14:55 -07:00
Bill McCloskey ab96df2b7a Bug 1268559 - Go back to ContentParent controlling process shutdown (i.e., backout bug 1262898) (r=dvander) 2016-06-24 13:13:45 -07:00
Bill McCloskey b227db332b Bug 1268559 - Remove extra EnsureProcessTerminated (r=dvander) 2016-06-24 13:11:42 -07:00
Bill McCloskey 9e69fb1443 Bug 1268559 - Make EnsureProcessTerminated non-blocking on Windows (r=dvander) 2016-06-24 13:10:42 -07:00
Boris Zbarsky a436637236 Bug 1281582. Remove JSContext privates. r=jorendorff 2016-06-24 14:19:50 -04:00
Nathan Froyd e0ab4c059f Bug 1281596 - fix evutil_rand.c for clang/android builds; r=jld
clang apparently dislikes |return func(...)| in a function which returns
void.  Remove the return to make everybody happy.
2016-06-23 17:16:25 -04:00
Andrea Marchesini aac2306f2c Bug 1269154 - Get rid of WorkerFeature: WorkerHolder, r=khuey
--HG--
rename : dom/cache/Feature.cpp => dom/cache/CacheWorkerHolder.cpp
rename : dom/cache/Feature.h => dom/cache/CacheWorkerHolder.h
rename : dom/workers/WorkerFeature.h => dom/workers/WorkerHolder.h
2016-06-23 10:53:14 +02:00
Carsten "Tomcat" Book 47aeb86e2c Backed out changeset 1c5d78c7ba43 (bug 1269154) for bustage on a CLOSED TREE
--HG--
rename : dom/cache/CacheWorkerHolder.cpp => dom/cache/Feature.cpp
rename : dom/cache/CacheWorkerHolder.h => dom/cache/Feature.h
rename : dom/workers/WorkerHolder.h => dom/workers/WorkerFeature.h
extra : rebase_source : 49f9e9ce0500ac441fe97878cf9308804926544f
2016-06-23 10:13:54 +02:00
Andrea Marchesini 45087a7970 Bug 1269154 - Get rid of WorkerFeature: WorkerHolder, r=khuey
--HG--
rename : dom/cache/Feature.cpp => dom/cache/CacheWorkerHolder.cpp
rename : dom/cache/Feature.h => dom/cache/CacheWorkerHolder.h
rename : dom/workers/WorkerFeature.h => dom/workers/WorkerHolder.h
2016-06-22 17:24:35 +02:00
Gabor Krizsanits 34e5765a00 Bug 1277614 - Guarding child iteration in DestroySubtree. r=wmccloskey 2016-06-22 13:21:48 +02:00
Cervantes Yu ce65905912 Bug 1268900 - Part 3: Test case for the IPDL keyword 'verify'. r=billm
MozReview-Commit-ID: KZeiDniAkoX
2016-06-22 17:52:07 +08:00
Cervantes Yu e4edd8f2c6 Bug 1268900 - Part 2: Code generation for the IPC message verifier. r=billm
MozReview-Commit-ID: 8mJ53UeuHWu
2016-06-22 17:51:49 +08:00
Cervantes Yu 1873f9d596 Bug 1268900 - Part 1: IPDL parser change for message verifier. r=billm
MozReview-Commit-ID: 4i9AiyP2AzN
2016-06-22 17:51:32 +08:00
Thomas Zimmermann 97a43c0b93 Bug 1276927: Define HAVE_ANDROID_OS before including 'android_filesystem_config.h', r=fabrice
The preprocessor token HAVE_ANDROID_OS configures 'android_filesystem_config.h'
to include the correct header files from the environment.

MozReview-Commit-ID: oKwdjzDjij
2016-06-16 08:43:51 +01:00
Cervantes Yu 28706c5d87 Bug 1275398 - Use shmem for sending image data in IPCDataTransfer. r=nical
MozReview-Commit-ID: 9XETnSBXxEW
2016-06-16 00:57:46 +08:00
Cervantes Yu 3115f628a1 Bug 1272018 - Use shared memory to transfer drag image data. r=nical
MozReview-Commit-ID: K5r9LBQ1FO0
2016-06-15 13:49:13 +01:00
Sebastian Hengst bb691db120 Backed out changeset b6c190b08824 (bug 1276927) 2016-06-15 12:23:52 +02:00
Thomas Zimmermann 565a7b74dc Bug 1276927: Define HAVE_ANDROID_OS before including 'android_filesystem_config.h', r=fabrice
The preprocessor token HAVE_ANDROID_OS configures 'android_filesystem_config.h'
to include the correct header files from the environment.

MozReview-Commit-ID: oKwdjzDjij
2016-06-15 10:59:49 +01:00
David Anderson d3bb5cb316 Add skeletal code for launching a GPU process. (bug 1271180 part 4, r=billm,jrmuizel)
--HG--
extra : rebase_source : 456e4b94a93191f85d90209459c5189ea165670d
2016-06-10 22:27:24 -04:00
David Anderson 910f73265e Move TaskFactory from dom/plugins to ipc/glue. (bug 1271180 part 1, r=aklotz)
--HG--
rename : dom/plugins/ipc/TaskFactory.h => ipc/glue/TaskFactory.h
extra : rebase_source : 96b02ead0afb82a27d668927dd53d722b77e488b
2016-06-10 15:43:35 -04:00
Henrik Skupin 73b62156c7 Bug 950401 - Add process logging to OS X / BSD. r=bsmedberg
MozReview-Commit-ID: bEPQabbSP1

--HG--
extra : rebase_source : 115312fdb0f29a5914c5dcccb9d7ba7eae943ce0
2016-06-03 18:26:15 +02:00
Phil Ringnalda 5e0adb7d56 Back out 5 changesets (bug 1271180) for static analysis bustage
CLOSED TREE

Backed out changeset cfb53b780b18 (bug 1271180)
Backed out changeset 204b084385f8 (bug 1271180)
Backed out changeset 353da876be33 (bug 1271180)
Backed out changeset 4472dfbc1dc6 (bug 1271180)
Backed out changeset 81079e787b8a (bug 1271180)

--HG--
rename : ipc/glue/TaskFactory.h => dom/plugins/ipc/TaskFactory.h
2016-06-11 00:46:09 -07:00
David Anderson d2678d4141 Add skeletal code for launching a GPU process. (bug 1271180 part 4, r=billm,jrmuizel)
--HG--
extra : rebase_source : 332f5cf6ca5e1f78fb2283a7e79b6b21654e9e59
2016-06-10 22:27:24 -04:00
David Anderson 995cadf738 Move TaskFactory from dom/plugins to ipc/glue. (bug 1271180 part 1, r=aklotz)
--HG--
rename : dom/plugins/ipc/TaskFactory.h => ipc/glue/TaskFactory.h
extra : rebase_source : 485012c5a08eb0ce2a4225ddfe9cbfb454fc4302
2016-06-10 15:43:35 -04:00
Jonathan Watt b15368cfcb Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
James Andreou 7c273b3eb3 Bug 1276328 - Remove private browsing flags r=baku
--HG--
extra : rebase_source : e13f6b834ae22986776ca7cc3dd0cee3fc945992
2016-06-07 13:50:00 +02:00
Julian Seward e00ffcdc37 Bug 1258183 - TSan: data race toolkit/components/telemetry/Telemetry.cpp in CanRecordBase (part 2, derace). r=chutten.
--HG--
extra : rebase_source : 403c8ec419ee8ac2ece248a8395480dbd3018c74
2016-06-08 17:46:24 +02:00
Christoph Diehl 053c555889 Bug 777067 - "Fuzzing: IPC Protocol Definition Language (IPDL) Protocols". r=wmccloskey
--HG--
extra : rebase_source : f256b70d6f81f82339e52ab4f6bc2d9b4b751c08
2016-05-30 16:33:00 +02:00
J. Ryan Stinnett 31a7472e66 Bug 1271102 - Revert back to 256 MiB message limit. r=billm
It appears to be hard to fix some sources of >128 MiB messages (e.g. IndexedDB),
so revert back to a 256MiB limit for the short term.

MozReview-Commit-ID: Jg2tJnqWOtd
2016-06-07 22:33:18 -05:00
Jan de Mooij dad997a833 Bug 1277278 part 3 - Rename error reporter callback to warning reporter, assert it's only used for warnings. r=luke
--HG--
extra : rebase_source : ac1febc5220d649853f35c29de89a5e9ffb4fe98
2016-06-07 20:30:48 +02:00
Bob Owen 5714578c95 Bug 1278528: Don't try to initialize the sandbox TargetServices when we are not sandboxed. r=jimm
MozReview-Commit-ID: EpXy9LYXwQL
2016-06-07 14:03:51 +01:00
Gabor Krizsanits 6c0e1dc69f Bug 1146873 - Handling sandbox policy setup failures. r=bobowen 2016-06-06 15:13:33 +02:00
Jed Davis 78e49e2efb Bug 1114647 - Use firefox for child processes instead of plugin-container. r=ted
Disabled on Mac (content processes need to use plugin-container.app for
UI reasons) and on Linux unless --disable-sandboxing (build issues).

Based on work by George Wright <george@mozilla.com>.

--HG--
extra : amend_source : 43986e25743de21e3ddfb7893e3ed550fe6eef76
2016-06-03 12:49:39 -07:00
Honza Bambas 8db609c916 Bug 1275117 - Fix static strings leaks when mozlogging is on. r=jduell
--HG--
extra : rebase_source : 2a08f4eee9a900a4e34d58084eb222aedd319464
2016-05-31 08:11:00 -04:00
Carsten "Tomcat" Book 834b1d77f0 Backed out changeset f7481a586899 (bug 1258183) 2016-06-03 15:14:51 +02:00
Julian Seward 71f85a0741 Bug 1258183 - TSan: data race toolkit/components/telemetry/Telemetry.cpp in CanRecordBase (part 2, derace). r=chutten.
--HG--
extra : rebase_source : 322f4fb1826a1182d2b4f0450e013eaef5858398
2016-06-03 12:13:53 +02:00
Boris Zbarsky f86c21cecc Bug 1276317 part 1. Change JS_SetGCZeal to take a JSRuntime, not a JSContext. r=jandem 2016-06-02 10:34:38 -04:00
Haik Aftandilian c95d552240 Bug 1275430 - Add telemetry and logging to record content process failures to start; r=billm
MozReview-Commit-ID: LWeZbDBwfX5
2016-06-01 15:13:59 -07:00
Jonathan Hao 525c086187 Bug 1259871 - Replace getSimpleCodebasePrincipal with createCodebasePrincipal. r=sicking
MozReview-Commit-ID: Frx0CjBzuve

--HG--
extra : histedit_source : 036eb321d9ccb20e0e071ba588b0a1249eb34bdd
2016-05-24 18:01:34 +08:00
Alexandre Lissy 3ac31d4e70 Bug 1275299 - Make SocketTask a CancelableRunnable r=tzimmermann
MozReview-Commit-ID: JHVQ6BFvS1Z

--HG--
extra : rebase_source : 716d827e989d7a9e94478612c73f54f4bfe5aca5
2016-05-26 12:40:25 +02:00
Andrea Marchesini 8d58a3b347 Bug 1274363 - BroadcastChannel should dispatch events in the correct order, r=smaug 2016-05-30 10:48:40 +02:00
Chris Peterson 11ef78ae89 Bug 1275016 - Rename Endian.h to EndianUtils.h to avoid #include confusion with Android's endian.h stdlib header. r=froydnj
--HG--
rename : mfbt/Endian.h => mfbt/EndianUtils.h
2016-05-22 13:31:11 -07:00
Andrew McCreight 5848fe3b73 Bug 1276318, part 2 - Fix mode lines in ipc/glue. r=billm
MessageChannel.{h,cpp}, MessageLink.{h,cpp}, and ProtocolUtils.h are
using 4-space indent so I left those alone.
2016-05-27 14:54:31 -07:00
Andrew McCreight 9449c5e62d Bug 1276318, part 1 - Fix leading tabs in ipc/glue. r=billm
Also remove a weird mode line so the script can fix it more easily in
the next part.
2016-05-27 14:54:30 -07:00
Makoto Kato 9b769d7fc5 Bug 1286158 - Add Android 64bit support for libevent. r=billm
MozReview-Commit-ID: E84CVv8IZAE

--HG--
extra : rebase_source : 84210fefb36f7ba35c2d8bf1298acbcdd17f0cdc
2016-07-15 14:28:29 +09:00
Bill McCloskey 7dbc02ed0f Bug 1262671 - Use BufferList for Pickle (r=froydnj) 2016-05-27 09:57:41 -07:00
Bill McCloskey 2e4314c9a7 Bug 1262671 - IPC ReadData/ReadBytes elimination (r=froydnj) 2016-05-27 09:57:39 -07:00
Bill McCloskey b7441af61a Bug 1262671 - IPC sentinel checking (r=froydnj) 2016-05-27 09:57:38 -07:00
Bill McCloskey 291c555f34 Bug 1262671 - void** -> PickleIterator (r=froydnj) 2016-05-27 09:57:38 -07:00
Bill McCloskey 5b7911b430 Bug 1262671 - Remove unused TrimWriteData (r=froydnj) 2016-05-27 09:57:37 -07:00
Bill McCloskey f159cad060 Bug 1273312 - Add task.h to ipdl unit tests (r=khuey) 2016-05-27 09:57:36 -07:00
Bill McCloskey 1369c6edad Bug 1273307 - Remove copy constructor/assignment operator for Message/Pickle (r=froydnj) 2016-05-27 09:57:35 -07:00
Honza Bambas ff31be3edd Bug 1270752 - Fix lifetime of buffer passed to PR_SetEnv(). r=jduell
--HG--
extra : rebase_source : 7666e7e3f864fddb5536793a91c94bccf6bb2877
2016-05-26 03:18:00 -04:00
Bob Owen ecee115838 Bug 1250125: Make a 0 security.sandbox.content.level turn off the content process sandbox. r=TimAbraldes
This also fixes a bug where we weren't setting parts of the policy correctly for levels 3 to 9.

MozReview-Commit-ID: IXsg2nGOqoa

--HG--
extra : rebase_source : 65c76a581dcd498c7d7d5b01e4f4e140acdb244f
2016-05-25 09:06:23 +01:00
Carsten "Tomcat" Book 805f86c2b5 Merge mozilla-central to mozilla-inbound 2016-05-24 15:13:51 +02:00
Carsten "Tomcat" Book cb4337c62c merge mozilla-inbound to mozilla-central a=merge
--HG--
rename : dom/presentation/tests/mochitest/file_presentation_non_receiver_oop.html => dom/presentation/tests/mochitest/file_presentation_non_receiver.html
rename : dom/presentation/tests/mochitest/file_presentation_non_receiver_inner_iframe_oop.html => dom/presentation/tests/mochitest/file_presentation_non_receiver_inner_iframe.html
rename : dom/presentation/tests/mochitest/file_presentation_receiver_inner_iframe_oop.html => dom/presentation/tests/mochitest/file_presentation_receiver_inner_iframe.html
2016-05-24 14:52:23 +02:00
Carsten "Tomcat" Book 0ed94efabc Backed out changeset 0659c9235136 (bug 1274363) for memory leaks
--HG--
extra : rebase_source : 7fd1df522bb0cab48ca51d29140036f6a5a6a7cc
2016-05-24 09:37:23 +02:00
Andrea Marchesini 2d4ce92868 Bug 1274363 - BroadcastChannel should dispatch events in the correct order, r=smaug 2016-05-24 06:59:15 +02:00
Eric Rahm d2eb11dfd1 Bug 1274404 - Annotate IPC message name and size when crashing due to message size. r=mccr8 2016-05-23 11:15:47 -07:00
Alessio Placitelli d736f36a40 Bug 1145164 - Allow non-unitary increments to count histograms. r=gfritzsche
MozReview-Commit-ID: 7HxoGWmm22h
2016-05-10 09:49:00 +02:00
Alexandre Lissy 20b739aeda Bug 1273520 - NS_NewRunnable* renaming and include task.h r=fabrice
MozReview-Commit-ID: BcAboKGMr3a

--HG--
extra : rebase_source : 6c5050527d8dffbce4a5e867bd48254a1041e657
2016-05-18 18:25:35 +02:00
Cervantes Yu f3f969af61 Bug 1258317 - Part 2: Remove unused privilege in mozilla::ipc::TransferHandleTorProcess(). r=krizsa
Also fix a handle leak in mozilla::ipc::AnnotateProcessInformation().

MozReview-Commit-ID: DuepDytfoD2

--HG--
extra : rebase_source : 0b0dd05a3728e64962a774a2dcc35dc7646aa4dc
2016-05-06 19:01:29 +08:00
Chris Pearce a7ee9fee8a Bug 1271169 - Move all device binding code into librlz and remove static runtime requirement. r=glandium
I want the EME device binding/nodeId code to be callable from gtests, as well
as in plugin-container. I need this because I want to add a gtest that ensures
that we don't regress the EME/GMP device binding code. I want to call the GMP
device binding code in the gtest and in the GMP process, and compare the
result.

So we need to make it possible to link the device binding code into the gtests
as well as plugin-container. So move all code that device binding calls into
librlz, to make it easier to link against all the code required.

Note: the device binding code needs to be statically linked into
plugin-container so that it's covered by the Adobe CDM's voucher tool.


MozReview-Commit-ID: AvBAe1dh49Z

--HG--
rename : ipc/app/sha256.c => dom/media/gmp/rlz/sha256.c
rename : ipc/app/sha256.h => dom/media/gmp/rlz/sha256.h
extra : rebase_source : f60f1e68649fa90cbe1f2fe09f5f69948444b1df
2016-05-20 16:11:29 +12:00
Sebastian Hengst 63e3ff7608 Backed out changeset 2a2a4005e935 (bug 1274404) for Asan bustage: use of undeclared identifier 'CrashReporter'. r=backout on a CLOSED TREE 2016-05-21 19:36:27 +02:00
Eric Rahm ff177872a0 Bug 1274404 - Annotate IPC message name and size when crashing due to message size. r=mccr8 2016-05-20 14:30:39 -07:00
Bob Owen 9d7707097f Bug 1271601: If a child process fails to duplicate a TransportDescriptor pipe handle then send it anyway and get the target to duplicate. r=gabor
MozReview-Commit-ID: 5CKrQdDxGrg
2016-05-21 16:16:33 +01:00
Nathan Froyd a5f42fc63a Bug 1262937 - part 8 - factor out array length deserialization errors; r=jld 2016-05-21 04:07:56 -04:00
Nathan Froyd 647562c2d2 Bug 1262937 - part 7 - factor out union type deserialization errors; r=jld 2016-05-21 04:07:56 -04:00
Nathan Froyd dfe775eb9f Bug 1262937 - part 6 - enable custom error message for ipdl.py's checkedRead; r=jld
To enable string sharing, we're going to have helpful functions that
take a small, distinguishable, sharable string and construct a more
complete error message out of that.  To do that easily with checkedRead,
we need to be able to pass custom parameters into the error function.
2016-05-21 04:07:56 -04:00
Nathan Froyd dcc74a62c9 Bug 1262937 - part 5 - factor out actor reading code to a common base class; r=jld
Actor reading from IPC message is codegen'd with a lot of repeated code.
We can improve that by moving the core actor reading code out of
subclasses into IProtocolmanager.  While we still need to codegen a bit
of code to cast the read actor to the proper type, the code overall is
smaller.  The lone downside is that if we do encounter an error reading
the actor id out of the message, the precision of our crash messages is
reduced somewhat: we no longer have the protocol name doing the reading,
nor do we get crash report annotations, since we can't tell whether
we're in the parent or child process.
2016-05-21 04:07:56 -04:00
Nathan Froyd bdd874023f Bug 1262937 - part 4 - publically inherit from MessageListener in IProtocol; r=jld
IProtocolManager is templated over some listener type.  In our IPDL
code, that type is always IProtocol, which is a subclass of
MessageListener.  It's also important to note that IProtocol uses
protected inheritance from MessageListener; the generated code takes
advantage of this inheritance structure when it reads actors:

  // ChannelListener is typedef'd to MessageListener
  // Lookup here is IProtocolManager::Lookup
  ChannelListener* listener = Lookup(id);

Lookup returns a pointer to the type over which IProtocolManager is
templated.  As mentioned above, that type is always IProtocol.  But
thanks to the containing class inheriting from *both* IProtocolManager
and IProtocol, the returned pointer can be silently upcasted to
MessageListener thanks to C++ visibility rules.

It's not clear that this restricted inheritance structure is actually
benefitting anybody, or that the inheritance hierarchy of protocol
classes is the best way to do things.  This particular implementation
detail is getting in the way for the next improvement, so let's make the
protected inheritance public instead.
2016-05-21 04:07:56 -04:00
Nathan Froyd 2b69fc29e3 Bug 1262937 - part 3 - move quoting out of checkedRead; r=jld
checkedRead is set up to single-quote whatever message is passed in.
This scheme works great for all existing messages, but it makes some
callsites a little surprising ("where's the matching quote?") and
doesn't work well with message changes to be made in future patches.
Let's move the quoting out to client code.
2016-05-21 04:07:56 -04:00
Nathan Froyd 99e5f4a2e6 Bug 1262937 - part 2 - don't include the message name when complaining about handler failure; r=jld
Similar to part 1, this change enables the strings passed to
ProtocolErrorBreakpoint to be collapsed into a single string, saving
~60K of read-only data (!).  This change does affect debuggability
slightly, but given that ProtocolErrorBreakpoint only tries to throw the
passed-in string to stderr, I don't think it's a huge deal.
2016-05-21 04:07:56 -04:00
Nathan Froyd 558d2f2756 Bug 1262937 - part 1 - don't include the protocol name in Clone error messages; r=jld
We have better ways of getting the protocol name at the point of the
error (e.g. backtraces).  Removing it means the error message can be
condensed to a single string by the compiler/linking, saving ~8k of
read-only data.
2016-05-21 04:07:56 -04:00
Bob Owen c43bf02cda Bug 1035125 Part 8: Pass sandboxing pointers through XRE_InitChildProcess instead of linking to more functions in xul. r=aklotz,glandium
MozReview-Commit-ID: 5AiktOArpfU

--HG--
extra : rebase_source : 1ba3be949e2bfeb3b67687ab05d43342852ab764
2016-05-15 16:35:22 +01:00
Bob Owen 71b3258726 Bug 1035125 Part 4: Back out changeset 8ae39d920f5c and associated subsequent changes. r=glandium
The original changeset that is being backed out had comment:
Bug 1023941 - Part 2: Static-link the CRT into plugin-container.exe.

MozReview-Commit-ID: 1iPJghgd0t2

--HG--
extra : rebase_source : cbed4e43f51af8ea0c3adbfc150ed029fe0d0f57
2016-05-15 16:23:57 +01:00
Bob Owen 2447fbb7fa Bug 1035125 Part 1: Back out changeset 1910714b56c6 and associated subsequent changes. r=bsmedberg
The original changeset that is being backed out had comment:
Bug 1023941 - Part 5: Loader hook to redirect the missing import.

The changes made in bug 1023941 were to work around the fact that with VS2013, msvcr120.dll imports kernel32!GetLogicalProcessorInformation, which is not available on Windows XP SP2.
In VS2015, the GetLogicalProcessorInformation requirement has moved into concrt140.dll (concurrency runtime), which we don't use.
So, now that our build infra is building with VS2015, we can remove the hooking and static runtime linking required to get the VS2013 fix to work.

In addition we need to do that to be able us to link the Chromium sandbox code into firefox.exe and get it to build and run with both VS2015 and VS2013.

MozReview-Commit-ID: 1tlXaYJ8dHH

--HG--
extra : rebase_source : 49b216e34fc5c77af96df1f67ee44c46d5368bfe
2016-05-15 16:23:56 +01:00
Andrew McCreight 6d6a335801 Bug 1272135, part 3 - Fix mode lines in ipc/chromium/. r=billm
This patch was automatically generated by my modeline.py script.

This does not change the modelines for any files in
ipc/chromium/src/third_party/libevent/, which are tab-indented.
2016-05-16 16:03:26 -07:00
Andrew McCreight 294da2e51d Bug 1272135, part 2 - Delete two weird modelines in ipc/chromium. r=billm
This makes the automatic fixing in the next part easier.
2016-05-16 16:03:25 -07:00
Andrew McCreight c5dcf53b3f Bug 1272135, part 1 - Fix leading tab usage in ipc/chromium. r=billm
These are also detected by my modeline.py script.
2016-05-16 16:03:25 -07:00
Ben Kelly 4c8ab874ba Bug 1093357 P2 Add an RAII type to safely handle serialized stream actors. r=jld
* * *
Bug 1093357 P2 interdiff 001 address review feedback
* * *
Bug 1093357 P2 interdiff 002 refactor to IPCStream type
2016-05-15 10:32:09 -07:00
Ben Kelly 749d2c1626 Bug 1093357 P1 Implement an actor for streaming pipes from child to parent. r=jld
* * *
Bug 1093357 P1 interdiff 001 address review feedback
2016-05-15 10:32:09 -07:00
Chris Peterson 8a9e2d2bd4 Bug 1272513 - Part 2: Remove redundant -Wshadow CXXFLAGS from moz.build files. r=glandium 2016-05-14 00:54:55 -07:00
Chris Peterson 353ee65255 Bug 1272513 - Part 1: Suppress -Wshadow warnings-as-errors in some directories. r=glandium 2016-05-11 00:00:01 -07:00
Kyle Huey 223dd41b6f Bug 1269056: Part 3 - Consolidate XPCOM and chromium event queues for the main thread. r=froydnj 2016-05-12 15:15:43 -07:00
Kyle Huey 3425031e06 Bug 1269056: Part 2 - Consolidate XPCOM and chromium event queues for non-main nsThreads. r=froydnj 2016-05-12 15:15:43 -07:00