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

4466 Коммитов

Автор SHA1 Сообщение Дата
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
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
Kartikaya Gupta 2d2252c7b9 Bug 1390488 - Clean up ifdef indenting and balancing comments, no functional changes. r=froydnj
This function is very large and has many nested ifdefs. Without this cleanup
it was really hard to figure out where all I needed to add code.

MozReview-Commit-ID: IeA0AWW62Mn

--HG--
extra : rebase_source : a8447df42c60da79f1c982111c8f65bd0175f1de
2017-09-13 10:17:39 -04:00
Sebastian Hengst b5c600d7f8 Backed out changeset fdffa51b68d1 (bug 1390488) for build bustage at ipc/glue/GeckoChildProcessHost.cpp:868: undefined reference to `CrashReporter::GetChildProcessTmpDir(nsIFile**)'. r=backout on a CLOSED TREE 2017-09-13 16:37:50 +02:00
Sebastian Hengst 3066457971 Backed out changeset b80e267bdf30 (bug 1390488) 2017-09-13 16:36:56 +02:00
Kartikaya Gupta 36b2d6e26d 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 : 62ff819c5b03f642cd4b9af7c89c84b790397372
2017-09-13 10:18:15 -04:00