Commit Graph

580 Commits

Author SHA1 Message Date
Chris Lord
41c19b8630 Bug 1012639 - Fix OtherProcess sometimes being the current process handle. r=bent 2014-06-11 14:51:12 +01:00
"Kan-Ru Chen (陳侃如)"
95bc816ffe Bug 879475 - Part 005. Implement ContentBridge r=jlebar
Based on original patch by David Zbarsky <dzbarsky@gmail.com>
2014-06-11 13:44:13 +08:00
Victor Porof
5643294005 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Josh Aas
13abca4191 Bug 1014384: Fix 'IPDL code generator generates implementation stubs for pure virtual methods'. r=bent 2014-05-29 00:45:36 -05:00
Chris Peterson
1833ad5707 Bug 990764 - Replace MOZ_ASSUME_UNREACHABLE in ipdl. r=bsmedberg 2014-04-27 18:56:03 -07:00
Ben Turner
3dbc3b648e Bug 1006128 - Fix IPDL unit tests after bug 960774, r=bsmedberg. 2014-05-08 14:49:41 -07:00
Josh Aas
087d359099 Bug 1004196: Make all IPDL argument names be of form "aFoo" instead of "foo”. r=bent 2014-05-05 17:00:55 -05:00
Josh Aas
2c8ec2ef7a Bug 960774: Make ActorDestroy pure virtual on the parent side, require implementation. r=bent 2014-05-02 14:49:02 -05:00
Bill McCloskey
f38a7de260 Bug 986317 - Stop exposing urgent semantics in IPDL files (r=bent) 2014-04-03 13:29:11 -07:00
Benoit Jacob
22890b1636 Bug 968244 - Make IPDL-generated code not crash on bad shmems - r=bent 2014-02-25 08:57:10 -05:00
Benoit Jacob
740bf1682d Bug 974356 - 1/4 - Initialize mOtherProcess to an invalid handle value - r=bent 2014-02-25 08:12:49 -05:00
Ehsan Akhgari
f594359272 Bug 975740 - Port WIN32_EXE_LDFLAGS to moz.build; r=mshal 2014-02-24 08:30:25 -05:00
Ehsan Akhgari
7ae519f00f Bug 973393 - Move the LOCAL_INCLUDES in ipc to moz.build; r=glandium 2014-02-18 02:12:54 -05:00
Ms2ger
6e066deaea Bug 968856 - Move unconditional LOCAL_INCLUDES into moz.build; r=mshal 2014-02-15 21:24:59 +01:00
Ehsan Akhgari
0d73abcf6a Bug 967167 - Use fallible memory allocation when reading IPDL array types to make sure that we don't OOM for very large arrays; r=bent 2014-02-06 08:35:28 -05:00
Nathan Froyd
0ba3f4b05c Bug 967297 - consider ipdl modules as inputs to the ipdl build process; r=glandium 2014-02-06 00:21:46 -05:00
Ted Clancy
4d23d37aaf Bug 962344 - Log messages in IPDL should contain from/to information; Log message should go to logcat on Gonk devices. r=bent 2014-02-03 14:11:50 +01:00
Bill McCloskey
671c3d615a Bug 910962 - Make DeallocShmem not assert when child has crashed (r=bsmedberg) 2014-01-31 10:43:44 -08:00
Nathan Froyd
7eee016738 Bug 952941 - delete no-longer-used includedActorUsings field; r=ehsan 2013-09-27 17:15:02 -04:00
Cervantes Yu
35e59262b1 Bug 938470 - Part 2: IPC actor should clone actors created on the parent side for the Nuwa process. r=bent 2013-12-05 20:10:04 +08:00
Ben Turner
12c4024cd8 Bug 947575 - Fix IPDL unit tests on windows, r=bsmedberg.
--HG--
extra : transplant_source : %04B6%5C%3A%ED3E%06o%90%1Bx%60%96b.%0F%27P
2013-11-21 16:51:26 -08:00
David Anderson
5fa24d079b Remove bogus assert in RPC calls (bug 937216, r=cjones). 2013-12-05 15:06:29 -08:00
Mike Hommey
051aa3a2d3 Bug 942031 - Don't link against the js engine when there's no need to. r=mshal 2013-11-24 08:18:50 +09:00
Nathan Froyd
4c70cf2f1c Bug 939109 - remove stray debugging statement; r=ehsan 2013-11-15 10:15:53 -05:00
Mike Hommey
a65383e1e9 Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
8ceb917350 Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps 2013-11-19 11:48:10 +09:00
Mike Hommey
bb6779efe3 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
d7b6f95761 Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps 2013-11-19 11:47:14 +09:00
Nathan Froyd
b13405380d Bug 918651 - part 10 - remove the |USING CxxType| rule from the IPDL grammar; r=ehsan 2013-10-18 15:04:07 -04:00
Nathan Froyd
cabc180073 Bug 918651 - part 8 - remove redundant includes from IPDL files; r=ehsan
These include statements have been made redundant by all the qualifications
to the using statements.
2013-10-18 13:34:08 -04:00
Nathan Froyd
86db9223fa Bug 918651 - part 7 - place includes intelligently in generated IPDL files; r=bent
This is where the magic starts to happen.  We move includes from the base
protocol header (${NAME}.h) to the parent and child headers (${NAME}Parent.h
and ${NAME}Child.h) to follow good include hygiene.

For the base protocol header, we examine the set of types used by struct and
union definitions to determine which headers we need to include.

For parent and child headers, we forward declare what we can and include
appropriate headers otherwise.  For forward-declared types, we include the
appropriate headers in the parent and child source files.
2013-10-01 12:55:42 -04:00
Nathan Froyd
3a48a44787 Bug 918651 - part 6 - add unqualifiedTypedefs parameter to _ComputeTypeDeps; r=ehsan
When computing what set of includes a header file needs, we need to know
about all types that protocol-defined types use, not just qualified
ones: both global-scope names and same-namespace-as-protocol names are
valid to use without any sort of qualification.  This flag would normally
not be used in generating actual C++ code and therefore defaults to False.
2013-10-18 12:08:10 -04:00
Nathan Froyd
ad3ed9e5be Bug 918651 - part 5 - qualify all IPDL using statements with required header; r=ehsan 2013-10-01 15:25:07 -04:00
Nathan Froyd
6288378e7a Bug 918651 - part 4 - add keyword arguments to _makeForwardDeclForQClass; r=ehsan
We're going to need these later when we hand-roll our own forward declarations
for classes and structs.
2013-10-01 12:02:57 -04:00
Nathan Froyd
6d2d9bb175 Bug 918651 - part 3 - add optional |from header| qualification to using statements in ipdl; r=bent 2013-09-23 21:20:18 -04:00
Nathan Froyd
afca1db872 Bug 918651 - part 2 - don't munge the translation unit's headers; r=ehsan
Keep the builtin headers separate from the translation unit's headers.
We do this so when we start twiddling with the translation unit's headers,
we don't have to handle cases where those headers are actually builtin
headers.
2013-10-01 11:42:50 -04:00
Nathan Froyd
987974138d Bug 918651 - part 1 - remove unnecessary using statements from IPDL files; r=ehsan 2013-10-18 14:48:13 -04:00
Mike Hommey
71a1f5b46c Bug 864774 part 3 - Move some more CPPSRCS to moz.build. r=mshal 2013-10-30 07:51:03 +09:00
Mike Hommey
40d13924dc Bug 930896 - Keep track of files generated by a build backend. r=gps 2013-10-29 08:00:30 +09:00
Mike Hommey
f9cafb1bd9 Bug 930350 - Fix --enable-ipdl-tests build. r=gps. DONTBUILD because NPOTB 2013-10-25 08:39:45 +09:00
Mike Hommey
1d566f7586 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Brian O'Keefe
4c98f61956 Bug 928709 - Convert chromium-config.mk to mozbuild, r=mshal 2013-10-02 13:17:55 -04:00
Mike Hommey
61124c1afc Bug 921492 - Make StrictOrderingOnAppendList use actual alphabetical sorting. r=mshal,r=gps 2013-10-24 08:05:43 +09:00
Daniel Holbert
56f60d52a3 Bug 925243: Mark ipc/ipdl as FAIL_ON_WARNINGS. r=ehsan 2013-10-10 13:44:13 -07:00
Cervantes Yu
f4d4c52d41 Bug 922461: fix unused variable in CloneManagees() of actors that doesn't manage other protocols. r=bent 2013-10-10 09:17:01 -07:00
Nathan Froyd
ef10113542 Bug 924410 - don't generate typedefs in Message subclasses; r=ehsan
There's no reason for them to be there, since Message subclasses are nothing
more than a constructor and a logging method.
2013-10-01 12:50:18 -04:00
Ms2ger
7ffcd856c2 Bug 900980 - Part a: Move unconditional assignments to EXPORT_LIBRARY to moz.build; rs=gps 2013-10-03 09:11:13 +02:00
Nathan Froyd
b8ba20bc39 Bug 921563 - part 2 - delete typedefs and using statements from global scope in IPDL C++ files; r=gps 2013-09-27 13:14:47 -04:00
Nathan Froyd
7f284c8cab Bug 921563 - part 1 - declare return types in IPDL C++ with C++0x late return syntax; r=gps
Every IPDL C++ class contains a bunch of typedefs.

Every IPDL C++ source file contains a bunch of typedefs and using statements
for the exact same types.

Why is that?

Because the class itself is not in scope for name lookup of return types of C++
methods.  This limitation is annoying, but it makes sense.  The typedefs and
using statements therefore exist so we can be a little sloppy about return
types.

Let's stop being sloppy and polluting the global namespace inside these
files.  Less pollution makes it easier to smash the IPDL files together for
unified compilation.  One could do this by qualifying all necessary return
types...or we could just use the C++0x late return syntax, which guarantees the
class *is* in scope for name lookup.  I like this version a lot better.
2013-09-27 13:50:20 -04:00
David Anderson
cd16ae286d Introduce new RPC messaging semantics (bug 910493 part 1, r=cjones). 2013-10-01 09:15:03 -07:00
David Anderson
c8133fee65 Rename IPDL's RPC to Interrupt (bug 910020, r=bent).
--HG--
rename : ipc/ipdl/test/cxx/PTestRPCErrorCleanup.ipdl => ipc/ipdl/test/cxx/PTestInterruptErrorCleanup.ipdl
rename : ipc/ipdl/test/cxx/PTestRPCRaces.ipdl => ipc/ipdl/test/cxx/PTestInterruptRaces.ipdl
rename : ipc/ipdl/test/cxx/PTestRPCShutdownRace.ipdl => ipc/ipdl/test/cxx/PTestInterruptShutdownRace.ipdl
rename : ipc/ipdl/test/cxx/PTestRacyRPCReplies.ipdl => ipc/ipdl/test/cxx/PTestRacyInterruptReplies.ipdl
rename : ipc/ipdl/test/cxx/TestRPCErrorCleanup.cpp => ipc/ipdl/test/cxx/TestInterruptErrorCleanup.cpp
rename : ipc/ipdl/test/cxx/TestRPCErrorCleanup.h => ipc/ipdl/test/cxx/TestInterruptErrorCleanup.h
rename : ipc/ipdl/test/cxx/TestRPCRaces.cpp => ipc/ipdl/test/cxx/TestInterruptRaces.cpp
rename : ipc/ipdl/test/cxx/TestRPCRaces.h => ipc/ipdl/test/cxx/TestInterruptRaces.h
rename : ipc/ipdl/test/cxx/TestRPCShutdownRace.cpp => ipc/ipdl/test/cxx/TestInterruptShutdownRace.cpp
rename : ipc/ipdl/test/cxx/TestRPCShutdownRace.h => ipc/ipdl/test/cxx/TestInterruptShutdownRace.h
rename : ipc/ipdl/test/cxx/TestRacyRPCReplies.cpp => ipc/ipdl/test/cxx/TestRacyInterruptReplies.cpp
rename : ipc/ipdl/test/cxx/TestRacyRPCReplies.h => ipc/ipdl/test/cxx/TestRacyInterruptReplies.h
rename : ipc/ipdl/test/ipdl/error/rpcMessageCompress.ipdl => ipc/ipdl/test/ipdl/error/intrMessageCompress.ipdl
rename : ipc/ipdl/test/ipdl/error/tooWeakRPCAsync.ipdl => ipc/ipdl/test/ipdl/error/tooWeakInterruptAsync.ipdl
rename : ipc/ipdl/test/ipdl/ok/rpcProtocol.ipdl => ipc/ipdl/test/ipdl/ok/intrProtocol.ipdl
2013-09-30 17:27:45 -07:00
Cervantes Yu
eaf8730772 Bug 771765 - Support template content process, part 9: allocating a toplevel protocol should return itself. r=dzbarsky
Reverse the effect in bug 879475 part 14 since we need to keep track of open protocols in the Nuwa process.
2013-09-26 12:19:09 +08:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
8ec656a38c Bug 771765 - Support template content process, part 3: IPC glue and IPDL codegen to support protocol cloning. r=bent 2013-05-31 21:16:57 +08:00
David Anderson
f0500f6a4e Combine AsyncChannel, SyncChannel, and RPCChannel into one class (bug 901789, r=cjones,bent).
--HG--
rename : ipc/glue/RPCChannel.cpp => ipc/glue/MessageChannel.cpp
rename : ipc/glue/RPCChannel.h => ipc/glue/MessageChannel.h
2013-09-27 18:42:08 -07:00
Nathan Froyd
51b40471b2 Bug 914826 - part 6 - don't include basictypes.h or nscore.h in ipdl headers; r=ehsan 2013-09-10 15:55:39 -04:00
Nathan Froyd
49ff4edd5d Bug 914826 - part 5 - provide for cpp-only include files, starting with nsIFile.h and GeckoProfiler.h; r=ehsan 2013-09-10 15:45:16 -04:00
Nathan Froyd
0579fe5481 Bug 914826 - part 3 - forward-declare nsIFile for GetMinidump() declaration; r=ehsan 2013-09-10 15:35:51 -04:00
Nathan Froyd
ef5b2c6acc Bug 914826 - part 2 - rename builtinIncludes to builtinHeaderIncludes; r=ehsan 2013-09-10 15:34:44 -04:00
Nathan Froyd
92a447e6a7 Bug 914826 - part 1 - use static_assert instead of COMPILE_ASSERT in IPCMessageStart.h; r=ehsan 2013-09-10 15:07:10 -04:00
Gregory Szorc
9d660cc01b Bug 921070 - Remove precompile tier; r=glandium
It made sense at the time. We now have inverted tiers and will soon have
derecursified building. This doesn't make sense any more.
2013-09-26 16:05:10 -07:00
David Zbarsky
ff4ab2e771 Bug 879475: Allocing an actor for a bridged or opened protocol should return bool r=jlebar
Conflicts:
	dom/ipc/ContentChild.cpp
	dom/ipc/ContentChild.h
2013-09-23 17:54:25 -04:00
Mike Hommey
f1cf3b4238 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Brian O'Keefe
2d797bffde Bug 875934 - Move LIBRARY_NAME to moz.build, batch 4; r=mshal 2013-08-15 09:12:40 -04:00
Brian O'Keefe
4f68eb9b02 Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal 2013-08-15 09:02:09 -04:00
David Anderson
130cd7e1ac Don't deadlock on a child process for a CPOW (bug 905896, r=cjones). 2013-08-26 21:56:57 -07:00
Birunthan Mohanathas
f1b1f329c2 Bug 784739 - Switch from NULL to nullptr in ipc/. r=ehsan 2013-08-23 15:51:44 -04:00
Nathan Froyd
725f72856d Bug 908208 - part 3 - move guts of FatalError out-of-line to ProtocolUtils.cpp; r=bent 2013-08-22 10:39:32 -04:00
Nathan Froyd
498be60f21 Bug 908208 - part 2 - declare FatalError as MOZ_NEVER_INLINE rather than virtual; r=bent 2013-08-22 10:06:50 -04:00
Nathan Froyd
30a248b8d3 Bug 908208 - part 1 - add support for MOZ_NEVER_INLINE to MethodDecl; r=bent 2013-08-22 10:06:21 -04:00
Ms2ger
dba42e4001 Bug 883284 - Part d: Move LIBXUL_LIBRARY into moz.build (f-j); r=bsmedberg 2013-08-22 08:56:00 +02:00
David Zbarsky
214e27489e Bug 879475 - Rename the MsgStart messages to MsgStartChild for child protocols r=jlebar 2013-08-20 15:46:41 -04:00
David Zbarsky
9f1f08a32b Bug 885653 - Add support for IPDL bridges that connect two of the same protocol r=jlebar 2013-08-20 15:46:41 -04:00
Brian O'Keefe
3a92f0ae7c Bug 896177 - Remove useless config.mk includes; r=gps 2013-07-17 16:06:53 -04:00
David Anderson
d5cac87cfe Prevent deadlocks when sending sync messages during urgent in-calls (bug 900062, r=cjones). 2013-08-12 16:21:54 -07:00
Gregory Szorc
f299c1f5e8 Bug 899792 - Establish precompile tier and move IPDL and WebIDL build rules; r=glandium
A new build tier is introduced: precompile. The intention is to replace
the export subtier with something better and nonrecursive. IPDL and
WebIDL code generation have been moved into this new tier and are
performed concurrently. This appears to reduce build times due to fewer
"single threaded" build actions.

The subtier tracking UI has been updated to reflect operations that can
occur in parallel. As subtiers are started, they turn yellow. They can
then complete in any order.

Nonrecursive targets have been added to preserve the IPDL and WebIDL
build targets such that developers can type |make| from leaf directories
like they have always done.
2013-07-30 17:00:24 -07:00
Nathan Froyd
b0b83318dc Bug 629668 - make ipdl.py check timestamps to determine whether parsing/codegen is necessary; r=bent 2013-07-22 14:28:53 -04:00
Brian O'Keefe
a2b1403eb0 Bug 883502 - Part 1: Move 'chromium_config.mk' includes after rules.mk. r=gps 2013-07-04 08:28:43 -04:00
Trevor Saunders
82e5558b37 bug 887483 - remove a bunch of useless assignments to FORCE_STATIC_LIB implied by LIBXUL_LIBRARY=1 r=mshal 2013-07-11 11:06:34 -04:00
David Zbarsky
4078f39c27 Bug 885804: IPDL unit test changes r=benjamin 2013-07-08 11:48:40 -04:00
David Zbarsky
b41c42dc7f Bug 885804: Change IPDL codegen to rename (De)allocPFoo functions to (De)allocPFoo(Parent|Child) r=jlebar 2013-07-08 11:48:39 -04:00
Mike Shal
edeb7caf7a Bug 868536 - Move ipdl.mk files to moz.build; r=gps
Author: Mike Shal <mshal@mozilla.com>
2013-07-01 09:56:28 -04:00
David Anderson
53ed782fdd Add urgent message semantics to IPC and IPDL (bug 867013, r=cjones). 2013-07-02 20:37:33 -07:00
David Anderson
560edcbeff Remove unused run-to-completion feature in IPDL (bug 876989, r=cjones). 2013-07-02 11:22:18 -07:00
Kan-Ru Chen (陳侃如)
ed51d3a27c Bug 783451 - Add ipdl testcases. r=bent DONTBUILD
--HG--
extra : rebase_source : 7943a9f7d594a5790782c3f37b5bda46ae1a30cc
2013-06-13 13:53:38 +08:00
David Zbarsky
901e057ab8 Fix error message in ipdl compiler, no bug, r=jlebar over irc 2013-06-18 17:39:04 -07:00
Mike Shal
994cfe0b6b Bug 864774 - Part 2: Move CPPSRCS to moz.build as CPP_SOURCES; r=joey CLOSED TREE
From 9e0ba7f425143f545eb6c4b26a9a96b5ade4d8e9 Mon Sep 17 00:00:00 2001
2013-04-23 17:54:15 -04:00
Brian O'Keefe
2186ab5dce Bug 862986 - Part 2a: Migrate PROGRAM from Makefile.in to moz.build. r=gps 2013-05-01 14:05:40 -04:00
Ryan VanderMeulen
9e80ef1555 Backed out changesets c7937fb5f4bb and cf8db9b6bd61 (bug 862986) for bustage.
CLOSED TREE
2013-04-30 21:09:41 -04:00
Brian O'Keefe
6cb4a9b9be Bug 862986 - Part 2: Migrate PROGRAM from Makefile.in to moz.build. r=gps 2013-04-30 20:46:10 -04:00
Ryan VanderMeulen
d1a59f8eab Backed out changesets 64c7ba1d3d04 and 7e9d5bb4a9af (bug 862986) for test failures. 2013-04-30 10:08:38 -04:00
Brian O'Keefe
43eddbd12b Bug 862986 - Part 2: Migrate PROGRAM from Makefile.in to moz.build. r=gps 2013-04-30 09:08:31 -04:00
Georg Fritzsche
56f4a528de Bug 848237 - Let IPDL generate runtime aborts for constructor failures in child processes. r=bsmedberg 2013-04-15 15:57:14 +02:00
Mike Shal
77cdb6567d Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey 2013-04-16 15:24:43 -04:00
Bas Schouten
341383c413 Bug 825928: Land layers refactoring. r=jrmuizel,bas,nical,mattwoodrow,roc,nrc,benwa,bjacob,jgilbert,kchen CLOSED TREE
Please contact Bas Schouten <bschouten@mozilla.com>, Nicolas Silva <nsilva@mozilla.com> or Nicholas Cameron <ncameron@mozilla.com> with general questions. Below is a rough list of authors to contact with specific questions.

Authors:
gfx/layers/Compositor.* gfx/layers/Effects.h - Compositor Interface - bas,nrc,nical
gfx/layers/d3d* - D3D9/D3D10 - bas
gfx/layers/ThebesLayer* - ThebesLayers - nrc,bas
gfx/layers/composite/* - CompositeLayers - nrc,nical
gfx/layers/client/* - Client - nrc,nical,bas
gfx/layers/*Image* - nical
gfx/layers/ipc ipc - IPC - nical
gfx/layers/opengl - CompositorOGL - nrc,nical
gfx/2d - bas,nrc
gfx/gl - GLContext - bjacob
dom/* layout/* - DOM - mattwoodrow
2013-04-10 09:20:52 +00:00
Benoit Girard
240eef7967 Bug 844996 - DeallocShmem failures will abort in debug builds. r=cjones,benjamin 2013-03-27 15:28:57 -04:00
Eitan Isaacson
a6ee6b2e88 Bug 525444 - (Part 3/3) Support OOP speech synth. r=smaug
--HG--
rename : content/media/webspeech/synth/moz.build => content/media/webspeech/synth/ipc/test/moz.build
2013-04-03 15:13:17 -07:00
Kyle Machulis
5aa83c3e11 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps 2013-04-01 11:36:59 -07:00
Kyle Machulis
c79ccc0693 Backout for changeset 03452b187c14 (Bug 855465) due to bustage on a CLOSED TREE; r=qdot 2013-03-29 15:12:58 -07:00
Kyle Machulis
a59d40f143 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Chris Jones
8f84e7c878 Bug 853363 - Add profiler labels for IPDL IPC. r=benjamin
--HG--
extra : rebase_source : 52fa198719c18cec660623495542d990ae70f810
2013-03-22 14:57:59 +01:00