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

837 Коммитов

Автор SHA1 Сообщение Дата
Nathan Froyd 4a4de50da7 Bug 1259428 - part 2 - remove dodgy static_cast downcasts from logging statements; r=jld
Various bits of IPDL code would do something like:

  Message* m = ...;
  if (m.type() == particular message type) {
    static_cast<ParticularMessageType*>(m)->name();
  }

The static_cast is a remnant of having to do the downcast to access the
Log() method on the concrete subclass.  Since name() is defined on
Message, there's no need for these casts anymore, so let's remove them.
2016-03-25 17:07:26 -04:00
Nathan Froyd 63fe89bd2e Bug 1259428 - part 1 - don't call Log methods of generated method classes; r=jld
The first step to eliminating all the generated Message subclasses the
IPDL compiler spits out is to move the functionality of their Log
methods someplace else.  In addition to eliminating the need for the Log
methods, this change has the welcome effect of moving a bunch of code
that would be generated hundreds of times into a single place, which
should reduce code size a bit (debug builds only).  We don't actually
remove the generation of the Log methods; that change will be done for a
future patch.
2016-03-25 17:02:38 -04:00
Aaron Klotz 1a8c9407a8 Bug 1254373: Make TestDemon build on Windows; r=billm
MozReview-Commit-ID: GtgAVfDYhtk

--HG--
extra : rebase_source : 64c1bc26fa4501742c51edc8296837ef6b6590d1
2016-03-10 17:32:16 -07:00
Bill McCloskey b70d78b809 Bug 1248750 - Eliminate intentional IPC crashes (r=dvander) 2016-03-06 14:38:07 -08:00
Bill McCloskey f8784ed28b Back out bug 1248750 on a CLOSED TREE 2016-03-04 16:04:41 -08:00
Bill McCloskey 816b25e191 Bug 1248750 - Eliminate intentional IPC crashes (r=dvander) 2016-03-04 14:51:08 -08:00
Bill McCloskey 70bb5a0c46 Bug 1240985 - IPC fuzzer (r=gabor) 2016-03-04 14:51:08 -08:00
Lee Salzman f5674ca6c2 Bug 1245241 - part 3 - remove unused AdoptShmem from IPDL. r=billm 2016-02-18 10:56:15 -05:00
Lee Salzman d4c87aeb45 Bug 1245241 - part 2 - remove TYPE_SYSV Shmems from IPDL. r=billm 2016-02-18 10:56:15 -05:00
Bill McCloskey c08caf0331 Bug 1210099 - Use diagnostic assert for union discriminator checks (r=jld) 2016-02-04 22:30:06 -08:00
Nicolas Silva cd021cdc29 Bug 1208226 - Don't crash when failing to map a segment of shared memory. r=sotaro, billm 2016-02-01 16:11:00 +01:00
Bill McCloskey c663839ade Bug 1240871 - Don't allow implicit "async" in IPDL (r=mccr8,billm) 2016-01-28 20:56:37 -08:00
Nicholas Nethercote 26360d6c45 Bug 1239864 (part 9) - Use the new rect iterators in layout/ and ipc/. r=dholbert.
--HG--
extra : rebase_source : d5558c39bd3cfe85ee6f247eea8bab33f2f5027f
2016-01-18 17:20:59 -08:00
Gregory Szorc 86a9f976ba Bug 1239207 - Don't process IPDL when not compiling; r=glandium
IPDL processing takes ~9.4s on my i7-6700K and is the long pole in the
"export" tier for clobber --disable-compile-environment builds. IPDL
shouldn't be needed for these builds.

Disabling IPDL makes artifact builds ~4s faster on my machine.

--HG--
extra : rebase_source : 60aeec636e18380c3258f054e90d1b6c3a16fadf
2016-01-14 23:11:12 -08:00
Nicholas Nethercote ec89bbf7f2 Bug 1237151 (part 3) - Remove ignored qualifiers in all remaining code. r=froydnj. 2016-01-05 17:08:45 -08:00
Bill McCloskey 87cc880767 Bug 1223240 - Make it easier to set up top-level protocols (r=jld) 2015-12-23 12:29:39 -08:00
Randell Jesup f955d91200 Bug 1226200: Don't assume a TCPSocket has only one managee (and rename LoneManagedOrNull) r=jdm 2015-12-22 10:14:23 -05:00
Birunthan Mohanathas 9985829ecc Bug 1219392 - Capitalize mozilla::unused to avoid conflicts. r=froydnj 2015-11-02 07:53:26 +02:00
Aaron Klotz ad79787f87 Bug 1217250 - Fix some IPDL tests that were broken by bug 1212027; r=froydnj 2015-10-21 20:44:34 -04:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd fe57e31ffe Bug 1212027 - part 7 - modify IPDL codegen to store sub-protocols in a hashtable rather than an array; r=jld,nical,cpearce,billm 2015-10-07 14:30:33 -04:00
Nathan Froyd cba63c94d7 Bug 1212027 - part 4 - use class interfaces when destroying managees; r=jld
Similar to the last patch, we copy any sub-protocols a protocol owns
before destroying the sub-protocols.  We do this to ensure a stable
iteration over the sub-protocols, as destroying a sub-protocol may
trigger other sub-protocol deletions.  Let's permit an existing
interface method to do the copying for us, so if the details of how we
store sub-protocols change, this call site is insulated from the
details.
2015-10-07 00:02:27 -04:00
Nathan Froyd 405aa9e2df Bug 1212027 - part 3 - use class interfaces when cloning managees; r=jld
In $PROTOCOL::CloneManages, we reach directly into the other protocol's
sub-protocol arrays to copy them.  It would be better, from a
fewer-places-to-modify-when-things-change point of view if we used the
$PROTOCOL::Managed$SUBPROTOCOL array getter that already exists for this
purpose.  A good compiler should be able to remove the function call
overhead...but cloning managees is probably expensive anyway, so a
function call here doesn't matter much.

It's not immediately obvious to me why we clone and then iterate over
the clone, rather than iterating directly, but perhaps there are subtle
IPDL dragons lurking hereabouts.
2015-10-06 23:59:32 -04:00
Nathan Froyd 8065270d99 Bug 1212027 - part 2 - add a C++ AST type for 'auto'; r=jld
This type will come in handy when we have to add iteration over
hashtables, since it would be a pain to write out the iterator type.
2015-10-06 21:33:13 -04:00
Nathan Froyd 278e9ff8b1 Bug 1212027 - part 1 - rename ipdl lowering helpers to reflect intent, not function; r=jld
The functions:

- _callCxxArrayInsertSorted
- _callCxxArrayRemoveSorted
- _callCxxArrayClear
- _cxxArrayHasElementSorted

are only ever used to touch the managed sub-protocol arrays of a
protocol.  It would be better if they reflected the *intent* of what
they were doing, rather than what C++ function they were calling, since
we're about to change that.
2015-10-06 21:20:07 -04:00
George Wright c229949556 Bug 1207921 - Call makeReply before dtorEpilogue so that we don't end up with a nullptr deref r=billm 2015-09-28 09:17:05 -04:00
Chris Peterson 71920a9550 Bug 1207030 - Enable -Wshadow flag in more directories that have no -Wshadow warnings. r=glandium 2015-09-22 21:39:03 -07:00
Andrea Marchesini cd4473d62f Bug 1203426 - Rename StructuredCloneIPCHelper to StructuredCloneData, r=smaug
--HG--
rename : dom/ipc/StructuredCloneIPCHelper.cpp => dom/ipc/StructuredCloneData.cpp
rename : dom/ipc/StructuredCloneIPCHelper.h => dom/ipc/StructuredCloneData.h
2015-09-10 21:50:58 +01:00
Jed Davis c2c83b8933 Bug 1201329 - Use AlignedStorage2 instead of char[] for IPDL union members. r=billm
In addition to fixing the alignment, this helps our static analysis
reason about them; see bug for more info.
2015-09-03 21:56:59 -07:00
Nicholas Nethercote f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Bobby Holley 97b9240b34 Bug 1188696 - Hoist nsRefPtr.h into MFBT. r=froydnj 2015-07-29 10:44:59 -07:00
David Anderson c722fa544d Add default initializers for primitive fields in IPDL structs. (bug 1154522, r=billm) 2015-07-28 00:02:10 -07:00
Jeff Muizelaar 88a9b35787 Bug 1186025. Optimize the usage of regions. r=mstange
This eliminates a bad idiom in some places.

--HG--
extra : rebase_source : 362b6e88e074888ded8a02f930d5ffbf1e31ec86
2015-07-21 10:54:44 -04:00
Bill McCloskey 2f9787183c Bug 1128454 - Fix IPDL test (r=jimm) 2015-07-15 14:30:05 -07:00
Jim Mathies 9a5c8328b9 Bug 1128454 - Add crash report annotations for plugin bridge operation failures. r=billm 2015-07-09 19:07:49 -05:00
Aaron Klotz 96e16361c2 Bug 1170231: Part 2 - Regression test for IPC race mediation deadlock; r=dvander
--HG--
extra : rebase_source : e640fb691b0465d3679a61e4e97ab1eaf401fb5d
extra : histedit_source : 957a33f528c95f6badf311f1a9763018c219eabc
2015-06-07 22:08:56 -06:00
Bill McCloskey 14899230b3 Bug 1177013 - Fix IPDL tests for not allowing CPOWs during sync (r=dvander) 2015-07-06 19:58:45 -07:00
Bill McCloskey 64b777ec3f Bug 1177013 - CancelCurrentTransaction IPC support (r=dvander) 2015-07-06 19:58:44 -07:00
Phil Ringnalda 166cfe8460 Back out 12 changesets (bug 1177013) on suspicion of causing b2g emulator debug test bustage
CLOSED TREE

Backed out changeset 912aae0815f8 (bug 1177013)
Backed out changeset 3b6448172e50 (bug 1177013)
Backed out changeset 2af18bef5703 (bug 1177013)
Backed out changeset e6bf35115c11 (bug 1177013)
Backed out changeset 4d7f5205b60b (bug 1177013)
Backed out changeset f7de893911bc (bug 1177013)
Backed out changeset de79eba232f0 (bug 1177013)
Backed out changeset 978a77b60f2a (bug 1177013)
Backed out changeset f5b52fa19511 (bug 1177013)
Backed out changeset e14a7b70b6fa (bug 1177013)
Backed out changeset d0f5a3474659 (bug 1177013)
Backed out changeset bff9f07dad52 (bug 1177013)
2015-07-02 22:08:54 -07:00
Bill McCloskey af8a362eba Bug 1177013 - Fix IPDL tests for not allowing CPOWs during sync (r=dvander) 2015-07-02 17:18:11 -07:00
Bill McCloskey 44dfabe655 Bug 1177013 - CancelCurrentTransaction IPC support (r=dvander) 2015-07-02 17:18:10 -07:00
Botond Ballo 5042cc24cd Bug 1178514 - Mark one-argument constructors in IPDL tests as 'explicit'. r=bent
--HG--
extra : source : 90e22606e13f4b8bdfd2cf74b0f81d7a94c99dee
2015-06-29 18:29:48 -04:00
Andrew McCreight 470cef59ea Bug 1169382 - Don't generate commented out NS_INTERFACE_CLASS or NS_ABSTRACT_CLASS in IPDL. r=billm 2015-06-06 14:37:59 -07:00
Mike Hommey 806e0220a2 Bug 991983 - Use objdir-relative SOURCES instead of GENERATED_SOURCES. r=gps 2015-05-28 07:34:16 +09:00
Phil Ringnalda 198fda1fe8 Back out 7842a044a183 (bug 1167431) for widespread bustage
CLOSED TREE
2015-05-22 18:53:41 -07:00
Ben Turner a53a3243ec Bug 1167431 - 'Properly clean up actors whose RecvFooConstructor method returns false', r=billm. 2015-05-22 16:10:02 -07:00
Birunthan Mohanathas 735ccdd101 Bug 968520 - Add mozilla::fallible to Fallible{Auto,}TArray::SetLength calls. r=froydnj 2015-05-18 13:50:35 -07:00
Blake Kaplan 25d39ad698 Bug 1155494 - Add a 'compressall' message flag. f=handyman r=billm (parts of this patch were written by handyman with r=billm) 2015-05-05 16:20:42 -07:00
Nathan Froyd 91108f0f63 Bug 1158905 - remove dead code from protocol Transition functions; r=bent
PFoo::Transition currently looks something like:

bool
Transition(
        State from,
        mozilla::ipc::Trigger trigger,
        State* next)
{
    switch (from) {
    ...
    default:
        NS_RUNTIMEABORT("corrupted actor state");
        return false;
    }
    (*(next)) = __Error;
    return false;
}

Coverity complains that the assignment (*(next)) = __Error will never be
reached, and rightfully so.  We can remove this fallthrough block when
there are no states declared in the individual protocol.
2015-04-27 13:29:37 -04:00
Nathan Froyd b73bbd3af0 Bug 1158896 - prevent dead code from being generated in lower.py; r=bent
Coverity was complaining that we have things like:

    if ((!(actor))) {
        return false;
    }

    if ((!(actor))) {
        return false;
    }

in the generated code, as the second return will clearly never be hit.  To
address this, let's remove a redundant call to dtorPrologue.
2015-04-27 13:08:12 -04:00
Jim Blandy 6afdd6c96b Bug 1145051: Use MOZ_WARN_UNUSED_RESULT instead of NS_WARN_UNUSED_RESULT. r=glandium
--HG--
extra : rebase_source : d210822225d307f3e3685cb5f95b461c48c0be7e
2015-03-19 00:46:40 -07:00
Bill McCloskey 79abd6e01a Bug 1128457 - Change handling of urgent messages during timeout (r=dvander) 2015-04-13 18:11:49 -07:00
Ben Turner 51ec0b56dc Bug 1135344 - Don't let IPDL use names that are reserved for compilers, r=froydnj. 2015-04-09 11:35:18 -07:00
Nathan Froyd 7561c4089c Bug 1150266 - fix IPDL thinko for never-inline method declarations; r=bent 2015-04-01 20:40:16 -04:00
Bob Owen 283c8df550 Bug 1149971 Part 2: Cet rid of kCurrentProcessId as it makes lots of static initializers. r=dvander 2015-04-01 13:59:20 +01:00
Bob Owen 967713e4e9 Bug 1149971 Part 1: Follow-up to bug 1119878 to fix broken IPDL tests. r=dvander 2015-04-01 16:44:48 +01:00
Bob Owen e4f543bb58 Bug 1119878 Part 2: Change IPC code to hold ProcessID instead of ProcessHandle. r=billm, r=dvander, r=aklotz, r=cpearce 2015-04-01 09:40:35 +01:00
Ehsan Akhgari bf2df719b1 Bug 1145631 - Part 4: Replace MOZ_FINAL with final in the IPDL codegen; r=froydnj 2015-03-21 12:28:36 -04:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Bill McCloskey e26a687773 Bug 1121676 - Use a lock to protect the list of top-level actors (r=bent) 2015-03-20 12:02:41 -07:00
Bill McCloskey ba40fd679d Bug 1142109 - Process incoming urgent messages before sending (r=dvander) 2015-03-17 13:43:34 -07:00
Bill McCloskey 1004991381 Bug 1142109 - Fix IPDL tests (r=dvander) 2015-03-17 13:43:28 -07:00
Peter Van der Beken 5914b2bdde Bug 1133748 - Fix ipdl code for bridged protocols that are also opened. r=billm.
--HG--
extra : rebase_source : 308d8e3ac3caea541b649329d5a35ecd31725de9
2015-02-09 21:54:12 +01:00
Botond Ballo 19a974637b Bug 1135591 - Fix build breakage from bug 1132153 in code conditional on '--enable-ipdl-tests'. r=dholbert 2015-02-23 11:42:16 -05:00
Botond Ballo 847508c681 Bug 1132153 - Replace 'using namespace base' with specific using-declarations. r=dholbert 2015-02-11 15:01:26 -05:00
Nicholas Nethercote 242708cf72 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 488e401ff87e31a2074c4108c4df0572d9536667
2015-02-09 14:34:50 -08:00
Andrew McCreight d3826daa16 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote d34f0301b8 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 99182e70335d2b5ff95f8c528ae992d37294be3a
2015-02-04 20:05:36 -08:00
Bill McCloskey c04f106018 Bug 1124933 - Include crash reason when intentionally crashing content process (r=bent) 2015-02-03 09:09:27 -08:00
Bill McCloskey ab0788b330 Bug 1109884 - Stop using intr messages in PContent (r=bent) 2015-01-28 11:53:46 -08:00
Bill McCloskey 376b92ae54 Bug 1122956 - Convert IPDL tests to take move references (r=bent) 2015-01-20 15:42:54 -08:00
Kyle Huey 7c82e6dd0a Bug 1121673: Use move references in IPDL. r=bent 2015-01-16 11:58:52 -08:00
Ben Turner f62303f39a Bug 1116640, fix TestUrgentHangs on windows, r=billm. Not tested on current infra so DONTBUILD 2015-01-05 10:53:36 -08:00
Nathan Froyd de2ba33faa Bug 1114596 - don't define GENERATED_INCLUDES in ipc/ipdl/moz.build; r=gps
The common include file /ipc/chromium/chromium-config.mozbuild already
defines this variable for us, and there's no point in telling the
compiler to look twice in the same directory for includes.
2014-12-22 09:59:34 -05:00
Bill McCloskey 73c276ef13 Bug 1110938 - Add timeout for CPOWs (default to 0) (r=dvander) 2014-12-18 17:35:44 -08:00
Aaron Klotz 20dba0f8d2 Bug 1112827: Add IPDL's implicit typedefs to the set of explicit typedefs, preventing duplicates in generated code; r=bent 2014-12-18 14:38:18 -07:00
Ryan VanderMeulen 8a94c3960b Backed out changeset f0d4cb5f206c (bug 1112827) for Mulet permacrashing. 2014-12-18 15:26:05 -05:00
Aaron Klotz a425715aeb Bug 1112827: Add IPDL's implicit typedefs to the set of explicit typedefs, preventing duplicates in generated code; r=bent 2014-12-18 12:20:32 -07:00
Nathan Froyd 3f89e62115 Bug 1096487 - part 2 - make ipdl message constructors take their routing id; r=bent
Similarly to part, there's no need to say we don't know the routing id
when constructing a message, and then turn around and set the routing id
immediately afterwards.  Just let the constructor do its work.
2014-11-10 13:05:59 -05:00
Nathan Froyd 357e2a0e8c Bug 1096487 - part 1 - make ipdl message constructors set their priority directly; r=bent
The default constructor for ipdl-generated messages looks like:

    MOZ_IMPLICIT Msg_AsyncMessage() :
        IPC::Message(MSG_ROUTING_NONE, ID, IPC::Message::PRIORITY_NORMAL, COMPRESSION_NONE, "PContent::Msg_AsyncMessage")
    {
    }

IPC::Message::PRIORITY_NORMAL is 1, so any set_priority(1) calls are
just redudant.

Additionally, the priorities for messages are known at code generation
time, so we are always able to provide the right constants to the
message constructor, rather than using set_priority calls later.
2014-11-10 12:32:15 -05:00
Nathan Froyd d676b698ca Bug 1096501 - include nsRefPtr.h instead of nsAutoPtr.h in ipdl generated files; r=bent 2014-11-10 14:18:09 -05:00
Akshendra Pratap Singh 938aa11999 Bug 1074211: Output a warning message when a IPDL constructor returns a null value; r=bent 2014-10-15 15:30:00 -07:00
Mike Hommey 47c853314f Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
2014-10-30 13:06:12 +09:00
Bill McCloskey 43b7a1a0c8 Bug 641685 - Make sure generated code for IPDL bridged includes all necessary forward decls (r=bsmedberg) 2014-10-29 08:04:51 -07:00
Bill McCloskey 2ab547d3ab Bug 1049879 - Remove urgent and rpc message types and replace with message priorities (r=dvander,bent,ehsan) 2014-10-07 21:32:45 -07:00
Carsten "Tomcat" Book 4985d0ee76 Backed out changeset e56bf4ea89fb (bug 1049879) for bustage in emulator debug builds on a CLOSED TREE 2014-10-08 08:03:57 +02:00
Bill McCloskey 281cb8db91 Bug 1049879 - Remove urgent and rpc message types and replace with message priorities (r=dvander,bent,ehsan) 2014-10-07 21:32:45 -07:00
Mike Hommey ed70c5f377 Bug 1041941 - Use templates for programs, simple programs, libraries and C++ unit tests. r=gps 2014-09-03 14:10:54 +09:00
David Major 36c74581b8 Bug 1023941 - Part 5: Loader hook to redirect the missing import. r=bsmedberg
--HG--
extra : rebase_source : 7cf2e857f51dcfcc95bb806d49ef13b794f5ba5b
2014-08-28 14:53:38 +12:00
Bill McCloskey 4cedc603cb Bug 1050604 - Get IPDL tests passing again (r=bent) 2014-08-20 12:49:11 -07:00
Bill McCloskey be42be0ea4 Bug 1051128 - Allow filtering the IPC log by toplevel protocol name (r=bent) 2014-08-20 12:49:11 -07:00
Andrew McCreight 4790cd3937 Bug 1024795, part 4 - Use a default value for initializing unions, except for nsTArray. r=bent
This restores the initialization behavior prior to bug 819791, except for the one case that bug requires.
2014-08-13 11:36:15 -07:00
Andrew McCreight 7805ea0edf Bug 1024795, part 3 - Generate nsTArray instead of InfallibleTArray in lower.py. r=bent 2014-08-13 11:36:15 -07:00
Andrew McCreight 8c72cba1bb Bug 1024795, part 2 - static_cast isn't needed for nullptr in IPDL codegen. r=bent
Since bug 1038523, lower.py generates nullptr for NULL, so this cast isn't needed.
2014-08-13 11:36:14 -07:00
Andrew McCreight b341e821c2 Bug 1024795, part 1 - Remove trailing whitespace from lower.py. r=bent 2014-08-13 11:36:14 -07:00
Andrew McCreight 46562a3c3a Bug 1047717 - Don't generate trailing whitespace for IPDL CppDirective's with no |rest|. r=bent 2014-08-06 11:12:00 -04:00
Mike Hommey 89777800f9 Bug 1047267 - Move remaining OS_LIBS and EXTRA_LIBS to moz.build. r=gps
* * *
Bug 1047267 - To fold with "Move remaining OS_LIBS and EXTRA_LIBS to moz.build"
2014-08-07 14:21:03 +09:00
Nathan Froyd 12c76f15f7 Bug 1042878 - part 2 - move MOZ_CAIRO_CFLAGS et al additions to C*FLAGS into moz.build; r=glandium 2014-07-24 11:55:33 -04:00
Mike Hommey 5f6ba110e6 Bug 1043802 - Remove TOOLS_DIRS and TEST_TOOLS_DIRS. r=gps 2014-07-29 08:55:55 +09:00
Ehsan Akhgari 1266d7384c Bug 1045041 - Mark non-explicit classes created by IPDL to be MOZ_IMPLICIT; r=froydnj 2014-07-28 10:57:17 -04:00
Andrew McCreight c95e487200 Bug 1038966, part 3 - Shmem should use refcounted pointer classes when creating SharedMemory. r=bent 2014-07-25 16:41:25 -07:00
Andrew McCreight 018402f71c Bug 1038966, part 2 - Rename autoptr methods to refptr in lower.py. r=bent
Rename these before changing the definition to reduce the noise in the next patch.
2014-07-25 16:41:25 -07:00
Andrew McCreight 87758937e7 Bug 1038966, part 1 - AllocShmem and AllocUnsafeShmem do not need to use nsAutoPtr. r=bent
Also clean up the generated code a bit.
2014-07-25 16:41:25 -07:00
Mike Hommey 7cab62150a Bug 1041936 part 2 - Directly use the static library "xul" to link into "xul-gtest" instead of having an intermediate library "xul" used by "xul-shared" and "xul-gtest". r=gps 2014-07-23 13:33:09 +09:00
Mike Hommey 95063176fa Bug 1036894 part 9 - Replace all EXTRA_DSO_LDOPTS, SHARED_LIBRARY_LIBS and LIBS with EXTRA_LIBS, OS_LIBS or OS_LDFLAGS, appropriately. r=gps
OS_LIBS for libraries that are not part of the gecko tree, EXTRA_LIBS for
libraries, such as NSPR, that are in the tree, but are not handled by
moz.build just yet. Those EXTRA_LIBS may also come from a system library.
However, in cases where the expanded variables are always empty for the
in-tree case, OS_LIBS is used (as for, e.g. MOZ_ZLIB_LIBS). OS_LDFLAGS is
used exclusively for non-library linker flags.

Always pass EXTRA_LIBS before OS_LIBS on linker command lines.

Forbid EXTRA_DSO_LDOPTS, SHARED_LIBRARY_LIBS and LIBS in Makefiles.
2014-07-23 13:31:02 +09:00
Mike Hommey 5fab42fcaf Bug 1036894 part 8 - Move most in-tree library linkage information to moz.build, as USE_LIBS. r=gps 2014-07-23 13:30:52 +09:00
Andrew McCreight 34feea774d Bug 1038523 - Make IPDL generate nullptr for ExprLiteral.NULL. r=bent 2014-07-15 12:46:52 -07:00
Chris Lord 5c57498fbc Bug 1012639 - Fix OtherProcess sometimes being the current process handle. r=bent 2014-06-11 14:51:12 +01:00
"Kan-Ru Chen (陳侃如)" 9ed870c153 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 9ce7e9c089 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Josh Aas 8201d48ae1 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 17896eb5d7 Bug 990764 - Replace MOZ_ASSUME_UNREACHABLE in ipdl. r=bsmedberg 2014-04-27 18:56:03 -07:00
Ben Turner 04d9f7cc95 Bug 1006128 - Fix IPDL unit tests after bug 960774, r=bsmedberg. 2014-05-08 14:49:41 -07:00
Josh Aas 2e276ecf5f 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 d9aa92298d Bug 960774: Make ActorDestroy pure virtual on the parent side, require implementation. r=bent 2014-05-02 14:49:02 -05:00
Bill McCloskey 7b13759de7 Bug 986317 - Stop exposing urgent semantics in IPDL files (r=bent) 2014-04-03 13:29:11 -07:00
Benoit Jacob c2a3a79571 Bug 968244 - Make IPDL-generated code not crash on bad shmems - r=bent 2014-02-25 08:57:10 -05:00
Benoit Jacob 4a8e65915b Bug 974356 - 1/4 - Initialize mOtherProcess to an invalid handle value - r=bent 2014-02-25 08:12:49 -05:00
Ehsan Akhgari 39fc9361f6 Bug 975740 - Port WIN32_EXE_LDFLAGS to moz.build; r=mshal 2014-02-24 08:30:25 -05:00
Ehsan Akhgari 9e38fc2acd Bug 973393 - Move the LOCAL_INCLUDES in ipc to moz.build; r=glandium 2014-02-18 02:12:54 -05:00
Ms2ger 33da18c67e Bug 968856 - Move unconditional LOCAL_INCLUDES into moz.build; r=mshal 2014-02-15 21:24:59 +01:00
Ehsan Akhgari 3fa869d1f3 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 8d6641d961 Bug 967297 - consider ipdl modules as inputs to the ipdl build process; r=glandium 2014-02-06 00:21:46 -05:00
Ted Clancy c895425120 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 40ff701ba0 Bug 910962 - Make DeallocShmem not assert when child has crashed (r=bsmedberg) 2014-01-31 10:43:44 -08:00
Nathan Froyd de72954248 Bug 952941 - delete no-longer-used includedActorUsings field; r=ehsan 2013-09-27 17:15:02 -04:00
Cervantes Yu 38d6789b0d 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 9de016148a 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 bc3a485edc Remove bogus assert in RPC calls (bug 937216, r=cjones). 2013-12-05 15:06:29 -08:00
Mike Hommey 62a0ecdaf3 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 155da715db Bug 939109 - remove stray debugging statement; r=ehsan 2013-11-15 10:15:53 -05:00
Mike Hommey 2812d11fce 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 e06d795c71 Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps 2013-11-19 11:48:10 +09:00
Mike Hommey e80e877ab7 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey ffe0380912 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 0778377b21 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 ec839c62b4 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 f478d39678 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 e5d5df0e6c 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 ebcc1e1abf Bug 918651 - part 5 - qualify all IPDL using statements with required header; r=ehsan 2013-10-01 15:25:07 -04:00
Nathan Froyd f4c2384809 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 f177ad89af 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 0726779150 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 c41a24510b Bug 918651 - part 1 - remove unnecessary using statements from IPDL files; r=ehsan 2013-10-18 14:48:13 -04:00
Mike Hommey 4a02ac1e8a Bug 864774 part 3 - Move some more CPPSRCS to moz.build. r=mshal 2013-10-30 07:51:03 +09:00
Mike Hommey 2eefafb740 Bug 930896 - Keep track of files generated by a build backend. r=gps 2013-10-29 08:00:30 +09:00
Mike Hommey 91d475fc4c Bug 930350 - Fix --enable-ipdl-tests build. r=gps. DONTBUILD because NPOTB 2013-10-25 08:39:45 +09:00
Mike Hommey b000a846c2 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Brian O'Keefe 9c9d71fddb Bug 928709 - Convert chromium-config.mk to mozbuild, r=mshal 2013-10-02 13:17:55 -04:00
Mike Hommey 59a17d0f20 Bug 921492 - Make StrictOrderingOnAppendList use actual alphabetical sorting. r=mshal,r=gps 2013-10-24 08:05:43 +09:00
Daniel Holbert 2adafde9f1 Bug 925243: Mark ipc/ipdl as FAIL_ON_WARNINGS. r=ehsan 2013-10-10 13:44:13 -07:00
Cervantes Yu 0ff90ed38b 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 7cdd45a716 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 f4153f40d4 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 53115a9178 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 27eba83426 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 47ae6f0cc8 Introduce new RPC messaging semantics (bug 910493 part 1, r=cjones). 2013-10-01 09:15:03 -07:00
David Anderson 437f6053a9 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 0a6a25b7c4 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) 42fe4d9b7d 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 fd2cf49aa1 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 5ce2711c7a 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 12fa756043 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 44d376b745 Bug 914826 - part 3 - forward-declare nsIFile for GetMinidump() declaration; r=ehsan 2013-09-10 15:35:51 -04:00
Nathan Froyd a4908f9bf1 Bug 914826 - part 2 - rename builtinIncludes to builtinHeaderIncludes; r=ehsan 2013-09-10 15:34:44 -04:00
Nathan Froyd 515c39f6fa 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 d03c8a0359 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 9eca84e4d8 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 f8bc7fa754 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Brian O'Keefe 261614859f Bug 875934 - Move LIBRARY_NAME to moz.build, batch 4; r=mshal 2013-08-15 09:12:40 -04:00
Brian O'Keefe d118b95a0d Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal 2013-08-15 09:02:09 -04:00
David Anderson 16668a7bf4 Don't deadlock on a child process for a CPOW (bug 905896, r=cjones). 2013-08-26 21:56:57 -07:00
Birunthan Mohanathas 8923c06ee9 Bug 784739 - Switch from NULL to nullptr in ipc/. r=ehsan 2013-08-23 15:51:44 -04:00
Nathan Froyd 05b3cb417a 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 5555ce97f3 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 f4d8955973 Bug 908208 - part 1 - add support for MOZ_NEVER_INLINE to MethodDecl; r=bent 2013-08-22 10:06:21 -04:00
Ms2ger 1c4d224f0e Bug 883284 - Part d: Move LIBXUL_LIBRARY into moz.build (f-j); r=bsmedberg 2013-08-22 08:56:00 +02:00
David Zbarsky 9117aef526 Bug 879475 - Rename the MsgStart messages to MsgStartChild for child protocols r=jlebar 2013-08-20 15:46:41 -04:00
David Zbarsky 7ea8d07357 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 61565e4086 Bug 896177 - Remove useless config.mk includes; r=gps 2013-07-17 16:06:53 -04:00
David Anderson 97dabc4cb4 Prevent deadlocks when sending sync messages during urgent in-calls (bug 900062, r=cjones). 2013-08-12 16:21:54 -07:00
Gregory Szorc 1340edfe51 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 9f3c9da996 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 f4815f2203 Bug 883502 - Part 1: Move 'chromium_config.mk' includes after rules.mk. r=gps 2013-07-04 08:28:43 -04:00
Trevor Saunders f33ade0d68 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 4228506a7b Bug 885804: IPDL unit test changes r=benjamin 2013-07-08 11:48:40 -04:00
David Zbarsky 554ba1b8b7 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 d5df6bb361 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 3b7c85be1b Add urgent message semantics to IPC and IPDL (bug 867013, r=cjones). 2013-07-02 20:37:33 -07:00
David Anderson 2d21f2b922 Remove unused run-to-completion feature in IPDL (bug 876989, r=cjones). 2013-07-02 11:22:18 -07:00
Kan-Ru Chen (陳侃如) c3c04eb5f3 Bug 783451 - Add ipdl testcases. r=bent DONTBUILD
--HG--
extra : rebase_source : 7943a9f7d594a5790782c3f37b5bda46ae1a30cc
2013-06-13 13:53:38 +08:00
David Zbarsky d8e726af8c Fix error message in ipdl compiler, no bug, r=jlebar over irc 2013-06-18 17:39:04 -07:00
Mike Shal 5169c0a913 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 8d90859ddb Bug 862986 - Part 2a: Migrate PROGRAM from Makefile.in to moz.build. r=gps 2013-05-01 14:05:40 -04:00
Ryan VanderMeulen 8dd4074205 Backed out changesets c7937fb5f4bb and cf8db9b6bd61 (bug 862986) for bustage.
CLOSED TREE
2013-04-30 21:09:41 -04:00
Brian O'Keefe 7422d5ac7b Bug 862986 - Part 2: Migrate PROGRAM from Makefile.in to moz.build. r=gps 2013-04-30 20:46:10 -04:00
Ryan VanderMeulen b6cc74b921 Backed out changesets 64c7ba1d3d04 and 7e9d5bb4a9af (bug 862986) for test failures. 2013-04-30 10:08:38 -04:00
Brian O'Keefe 0baa2a32d6 Bug 862986 - Part 2: Migrate PROGRAM from Makefile.in to moz.build. r=gps 2013-04-30 09:08:31 -04:00
Georg Fritzsche a59a366c8c 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 df7deac25b Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey 2013-04-16 15:24:43 -04:00
Bas Schouten 839048be74 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 2e9c45b7dc Bug 844996 - DeallocShmem failures will abort in debug builds. r=cjones,benjamin 2013-03-27 15:28:57 -04:00
Eitan Isaacson 4e35440ec8 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 72a717a860 Bug 855465 - Add emacs python mode comments to moz.build files; r=gps 2013-04-01 11:36:59 -07:00
Kyle Machulis 43628a7867 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 334c0800cf 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 c65d27ed5f Bug 853363 - Add profiler labels for IPDL IPC. r=benjamin
--HG--
extra : rebase_source : 52fa198719c18cec660623495542d990ae70f810
2013-03-22 14:57:59 +01:00
Mike Shal 7ecea60097 Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps 2013-03-19 11:47:00 -07:00
Gregory Szorc 7d09ff18e0 Bug 844635 - Part 3: Remove empty Makefile.in files; r=glandium 2013-03-17 18:01:25 -07:00
Gene Lian 3fd091d44a Bug 844429 - B2G SMS & MMS: move SMS codes into dom/mobilemessage to make it generic for MMS. r=vicamo
--HG--
rename : dom/sms/interfaces/nsIDOMMozSmsEvent.idl => dom/mobilemessage/interfaces/nsIDOMMozSmsEvent.idl
rename : dom/sms/interfaces/nsIDOMMozSmsMessage.idl => dom/mobilemessage/interfaces/nsIDOMMozSmsMessage.idl
rename : dom/sms/interfaces/nsIDOMNavigatorSms.idl => dom/mobilemessage/interfaces/nsIDOMNavigatorSms.idl
rename : dom/sms/interfaces/nsIDOMSmsCursor.idl => dom/mobilemessage/interfaces/nsIDOMSmsCursor.idl
rename : dom/sms/interfaces/nsIDOMSmsFilter.idl => dom/mobilemessage/interfaces/nsIDOMSmsFilter.idl
rename : dom/sms/interfaces/nsIDOMSmsManager.idl => dom/mobilemessage/interfaces/nsIDOMSmsManager.idl
rename : dom/sms/interfaces/nsIDOMSmsRequest.idl => dom/mobilemessage/interfaces/nsIDOMSmsRequest.idl
rename : dom/sms/interfaces/nsIDOMSmsSegmentInfo.idl => dom/mobilemessage/interfaces/nsIDOMSmsSegmentInfo.idl
rename : dom/sms/interfaces/nsISmsRequest.idl => dom/mobilemessage/interfaces/nsISmsRequest.idl
rename : dom/sms/interfaces/nsISmsService.idl => dom/mobilemessage/interfaces/nsISmsService.idl
rename : dom/sms/src/Constants.cpp => dom/mobilemessage/src/Constants.cpp
rename : dom/sms/src/Constants.h => dom/mobilemessage/src/Constants.h
rename : dom/sms/src/SmsCursor.cpp => dom/mobilemessage/src/SmsCursor.cpp
rename : dom/sms/src/SmsCursor.h => dom/mobilemessage/src/SmsCursor.h
rename : dom/sms/src/SmsFilter.cpp => dom/mobilemessage/src/SmsFilter.cpp
rename : dom/sms/src/SmsFilter.h => dom/mobilemessage/src/SmsFilter.h
rename : dom/sms/src/SmsManager.cpp => dom/mobilemessage/src/SmsManager.cpp
rename : dom/sms/src/SmsManager.h => dom/mobilemessage/src/SmsManager.h
rename : dom/sms/src/SmsMessage.cpp => dom/mobilemessage/src/SmsMessage.cpp
rename : dom/sms/src/SmsMessage.h => dom/mobilemessage/src/SmsMessage.h
rename : dom/sms/src/SmsRequest.cpp => dom/mobilemessage/src/SmsRequest.cpp
rename : dom/sms/src/SmsRequest.h => dom/mobilemessage/src/SmsRequest.h
rename : dom/sms/src/SmsSegmentInfo.cpp => dom/mobilemessage/src/SmsSegmentInfo.cpp
rename : dom/sms/src/SmsSegmentInfo.h => dom/mobilemessage/src/SmsSegmentInfo.h
rename : dom/sms/src/SmsServicesFactory.cpp => dom/mobilemessage/src/SmsServicesFactory.cpp
rename : dom/sms/src/SmsServicesFactory.h => dom/mobilemessage/src/SmsServicesFactory.h
rename : dom/sms/src/Types.h => dom/mobilemessage/src/Types.h
rename : dom/sms/src/android/SmsService.cpp => dom/mobilemessage/src/android/SmsService.cpp
rename : dom/sms/src/android/SmsService.h => dom/mobilemessage/src/android/SmsService.h
rename : dom/sms/src/fallback/SmsService.cpp => dom/mobilemessage/src/fallback/SmsService.cpp
rename : dom/sms/src/fallback/SmsService.h => dom/mobilemessage/src/fallback/SmsService.h
rename : dom/sms/src/ipc/PSms.ipdl => dom/mobilemessage/src/ipc/PSms.ipdl
rename : dom/sms/src/ipc/PSmsRequest.ipdl => dom/mobilemessage/src/ipc/PSmsRequest.ipdl
rename : dom/sms/src/ipc/SmsChild.cpp => dom/mobilemessage/src/ipc/SmsChild.cpp
rename : dom/sms/src/ipc/SmsChild.h => dom/mobilemessage/src/ipc/SmsChild.h
rename : dom/sms/src/ipc/SmsIPCService.cpp => dom/mobilemessage/src/ipc/SmsIPCService.cpp
rename : dom/sms/src/ipc/SmsIPCService.h => dom/mobilemessage/src/ipc/SmsIPCService.h
rename : dom/sms/src/ipc/SmsParent.cpp => dom/mobilemessage/src/ipc/SmsParent.cpp
rename : dom/sms/src/ipc/SmsParent.h => dom/mobilemessage/src/ipc/SmsParent.h
rename : dom/sms/src/ipc/SmsTypes.ipdlh => dom/mobilemessage/src/ipc/SmsTypes.ipdlh
rename : dom/sms/src/ipc/ipdl.mk => dom/mobilemessage/src/ipc/ipdl.mk
rename : dom/sms/src/ril/SmsService.cpp => dom/mobilemessage/src/ril/SmsService.cpp
rename : dom/sms/src/ril/SmsService.h => dom/mobilemessage/src/ril/SmsService.h
rename : dom/sms/tests/Makefile.in => dom/mobilemessage/tests/Makefile.in
rename : dom/sms/tests/marionette/manifest.ini => dom/mobilemessage/tests/marionette/manifest.ini
rename : dom/sms/tests/marionette/test_between_emulators.py => dom/mobilemessage/tests/marionette/test_between_emulators.py
rename : dom/sms/tests/marionette/test_bug814761.js => dom/mobilemessage/tests/marionette/test_bug814761.js
rename : dom/sms/tests/marionette/test_emulator_loopback.js => dom/mobilemessage/tests/marionette/test_emulator_loopback.js
rename : dom/sms/tests/marionette/test_filter_date.js => dom/mobilemessage/tests/marionette/test_filter_date.js
rename : dom/sms/tests/marionette/test_filter_date_notfound.js => dom/mobilemessage/tests/marionette/test_filter_date_notfound.js
rename : dom/sms/tests/marionette/test_filter_mixed.js => dom/mobilemessage/tests/marionette/test_filter_mixed.js
rename : dom/sms/tests/marionette/test_filter_number_multiple.js => dom/mobilemessage/tests/marionette/test_filter_number_multiple.js
rename : dom/sms/tests/marionette/test_filter_number_single.js => dom/mobilemessage/tests/marionette/test_filter_number_single.js
rename : dom/sms/tests/marionette/test_filter_read.js => dom/mobilemessage/tests/marionette/test_filter_read.js
rename : dom/sms/tests/marionette/test_filter_received.js => dom/mobilemessage/tests/marionette/test_filter_received.js
rename : dom/sms/tests/marionette/test_filter_sent.js => dom/mobilemessage/tests/marionette/test_filter_sent.js
rename : dom/sms/tests/marionette/test_filter_unread.js => dom/mobilemessage/tests/marionette/test_filter_unread.js
rename : dom/sms/tests/marionette/test_getmessage.js => dom/mobilemessage/tests/marionette/test_getmessage.js
rename : dom/sms/tests/marionette/test_getmessage_notfound.js => dom/mobilemessage/tests/marionette/test_getmessage_notfound.js
rename : dom/sms/tests/marionette/test_getmessages.js => dom/mobilemessage/tests/marionette/test_getmessages.js
rename : dom/sms/tests/marionette/test_incoming.js => dom/mobilemessage/tests/marionette/test_incoming.js
rename : dom/sms/tests/marionette/test_incoming_delete.js => dom/mobilemessage/tests/marionette/test_incoming_delete.js
rename : dom/sms/tests/marionette/test_incoming_max_segments.js => dom/mobilemessage/tests/marionette/test_incoming_max_segments.js
rename : dom/sms/tests/marionette/test_incoming_multipart.js => dom/mobilemessage/tests/marionette/test_incoming_multipart.js
rename : dom/sms/tests/marionette/test_mark_msg_read.js => dom/mobilemessage/tests/marionette/test_mark_msg_read.js
rename : dom/sms/tests/marionette/test_mark_msg_read_error.js => dom/mobilemessage/tests/marionette/test_mark_msg_read_error.js
rename : dom/sms/tests/marionette/test_message_classes.js => dom/mobilemessage/tests/marionette/test_message_classes.js
rename : dom/sms/tests/marionette/test_outgoing.js => dom/mobilemessage/tests/marionette/test_outgoing.js
rename : dom/sms/tests/marionette/test_outgoing_delete.js => dom/mobilemessage/tests/marionette/test_outgoing_delete.js
rename : dom/sms/tests/marionette/test_outgoing_max_segments.js => dom/mobilemessage/tests/marionette/test_outgoing_max_segments.js
rename : dom/sms/tests/marionette/test_segment_info.js => dom/mobilemessage/tests/marionette/test_segment_info.js
rename : dom/sms/tests/marionette/test_strict_7bit_encoding.js => dom/mobilemessage/tests/marionette/test_strict_7bit_encoding.js
rename : dom/sms/tests/moz.build => dom/mobilemessage/tests/moz.build
rename : dom/sms/tests/test_sms_basics.html => dom/mobilemessage/tests/test_sms_basics.html
rename : dom/sms/tests/test_smsdatabaseservice.xul => dom/mobilemessage/tests/test_smsdatabaseservice.xul
rename : dom/sms/tests/test_smsfilter.html => dom/mobilemessage/tests/test_smsfilter.html
rename : dom/sms/tests/test_smsservice_createsmsmessage.js => dom/mobilemessage/tests/test_smsservice_createsmsmessage.js
rename : dom/sms/tests/xpcshell.ini => dom/mobilemessage/tests/xpcshell.ini
2013-03-01 16:38:47 +08:00
Gregory Szorc c7bf7887f9 Bug 784841 - Part 18r: Convert /ipc; r=ted f=Ms2ger 2013-02-25 12:47:22 -08:00
Ben Turner 1a6771d8e6 Bug 831307 - Allow invalid file handles to not crash child processes. r=cjones. 2013-01-24 17:10:39 -08:00
Ben Turner 43a7f16ee1 Bug 831307, add additional logging. r=cjones. 2013-01-23 15:57:05 -08:00
Seth Fowler ebfdae8fdb Bug 824817 - Eliminate warnings in IPC code. r=cjones 2013-01-16 14:42:14 -08:00
Bas Schouten fd252a586b Bug 827825: Make mOtherProcess the current process for single-process IPDL protocols. r=cjones 2013-01-09 18:42:58 +01:00
Chris Jones 5282f37ed8 Bug 823422: Make ipdl C++ unit tests compile again. r=jlebar 2012-12-20 11:54:00 -08:00
Justin Lebar c621ba81f7 Bug 819791 - Part 9: Use explicit TArray copy constructors in IPDL generated code. r=cjones
This cset makes two nop changes to generated IPDL code.

1) Change an instance of

  InfallibleTArray<Foo> foo = InfallibleTArray<Foo>();

to

  InfallibleTArray<Foo> foo;

2) Change an instance of

  InfallibleTArray<Foo> foo = bar;

to

  InfallibleTArray<Foo> foo(bar);
2012-12-18 20:16:07 -05:00
Ben Turner 27072c3f92 Bug 808743 - ' Better protection for PBrowser shutdown and database invalidation in multiprocess scenarios'. r=khuey+cjones.
--HG--
extra : transplant_source : %BD%E4%ADA%09%CE%D9%BE%1C%7C%7B%1A%FC%86%5C%13%24%29%B4%16
2012-11-09 19:29:07 -08:00
Josh Matthews 10314074af Bug 770778 - Make TCPSocket e10s-friendly. r=bent 2012-09-24 14:53:49 -04:00
Chris Jones cbe3e12296 Test for bug 775777. r=bent 2012-09-20 12:30:53 -07:00
Chris Jones b594f26efa Bug 775777: Check dynamic actor type when deserializing. r=bent 2012-09-20 12:30:52 -07:00
Ms2ger 711f1fd480 Bug 787933 - Stop using stdin types in IPC code; r=bsmedberg+cjones sr=cjones 2012-09-17 10:37:20 +02:00
Rafael Ávila de Espíndola 0b6fcd9466 Bug 786148 - s/IPC/ipc/. r=ted.
This makes our builds a bit more reproducible. Without it when processing

#include "IPC/IPCMessageUtils.h

we end up in

#include "ShadowLayers.h"

which in the final XUL translates into the symbol (run nm -a to see it):

 - 00 0000   SOL ../../../../gfx/layers/IPC/ShadowLayers.h

now when some file in gfx/layers/ipc does

#include "ShadowLayres.h"

the file found is the local one with the lowercase directory name and we end up
with

 - 00 0000   SOL ../../../../gfx/layers/ipc/ShadowLayers.h

--HG--
extra : rebase_source : 96c68f6a3448eedaa280039960df911a9c707cac
2012-08-28 08:41:04 -04:00
Chris Jones fef429cb47 Bug 636063, part 3: Honor compression requests when queuing messages. r=bent 2012-08-25 01:25:08 -07:00
Chris Jones 967d4da9ae Bug 636063, part 2: Backend support for |compress|d messages. r=bent 2012-08-25 01:25:08 -07:00
Chris Jones e3beae9af4 Bug 636063, part 1: Frontend support for |compress|d messages. r=bent 2012-08-25 01:25:08 -07:00
Ms2ger 1023162c9c Back out bug 636063, bug 774988 and bug 784647 for busting all of Android. 2012-08-25 13:18:18 +02:00
Chris Jones 59b05f8960 Bug 636063, part 3: Honor compression requests when queuing messages. r=bent 2012-08-25 01:25:08 -07:00
Chris Jones 8b9d683757 Bug 636063, part 2: Backend support for |compress|d messages. r=bent 2012-08-25 01:25:08 -07:00
Chris Jones 6da49bb1b7 Bug 636063, part 1: Frontend support for |compress|d messages. r=bent 2012-08-25 01:25:08 -07:00
Ben Turner 7370f46298 Bug 784726 - 'Remove old IPC::URI'. r=cjones+khuey.
--HG--
rename : ipc/glue/IPCSerializableParams.ipdlh => ipc/glue/InputStreamParams.ipdlh
extra : transplant_source : %A6%BC%8B%8D%3A_%7Df%2B%FE%AA%94%81%AB%CAW%15K%A7%03
2012-08-23 12:33:46 -07:00
Ben Turner 8740622e89 Bug 782649 - 'Remove old IPC::InputStream'. r=cjones+khuey. 2012-08-22 19:13:54 -07:00
Ryan VanderMeulen 4369c9acf5 Backout 41a3cdf92063 (bug 782649) for Linux xpcshell failures. 2012-08-22 17:31:06 -04:00
Ben Turner f17c803d93 Bug 782649 - 'Remove old IPC::InputStream'. r=cjones+khuey. 2012-08-22 12:19:29 -07:00
Ehsan Akhgari e7ff5cfabe Bug 579517 - Part 3: Remove NSPR types from the IPDL parser's built-in type list; r=bsmedberg 2012-08-22 11:59:02 -04:00
Ehsan Akhgari e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Ben Turner 4b09919a18 Bug 781256 - 'Share FileDescriptors across processes in preparation for OS-level sandbox'. r=khuey+cjones.
--HG--
rename : netwerk/base/public/nsIIPCSerializable.idl => netwerk/base/public/nsIIPCSerializableObsolete.idl
extra : transplant_source : %EB%18%9D%E6%B1%C6%26%A2%16%F3%85g%1A%25%B1%8E%A1%E72e
2012-08-16 00:02:32 -04:00
Ryan VanderMeulen 6d99be6b69 Backout 7158af024a9b (bug 779013) due to suspected Windows bustage on a CLOSED TREE. 2012-08-08 19:40:54 -04:00
Chris Dearman e54b931d0c Bug 779013 - Align the mValue union in IPDL-generated code. r=cjones 2012-08-08 15:10:03 -04:00
Mike Hommey 70d7c821af Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Aryeh Gregor d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Chris Jones 9432ca5447 Bug 778070: Trigger ProtocolErrorBreakpoint() on message-handler |return false/null;|. r=bent 2012-07-27 11:39:44 -07:00
Joshua Cranmer d539846cab Bug 702877 - Replace NS_OVERRIDE with MOZ_OVERRIDE. r=ehsan
--HG--
extra : rebase_source : 1843575683c3897f96f3966cbce26140ff1a7d90
2012-07-06 13:15:45 -05:00
Ehsan Akhgari 117b7fa829 Convert some of the IPDL C++ test files to use Unix line endings (no bug) 2012-07-23 16:31:14 -04:00
Chris Jones f8279ab4fc Bug 775867: Implement ProtocolErrorBreakpoint() for easier debugging of IPC errors. r=bent 2012-07-23 10:24:29 -07:00
Kyle Machulis f8c0d08e82 Bug 740744: Asynchronous dbus events for bluetooth, Start/StopDiscovery and device event firing; r=bent sr=mrbkap 2012-07-17 20:41:54 -07:00
Chris Jones 70c6e3bae9 Bug 745148, part 0: Log the PID with MOZ_IPC_MESSAGE_LOG logging. r=bent 2012-07-14 14:21:32 -07:00
Josh Matthews 0e05a2e2bf Bug 767775 - Viciously and loudly kill any process sending messages that race with RPC __delete__ messages. Test by bsmedberg. r=cjones 2012-07-13 13:53:00 -04:00
Doug Turner f2adcdd386 Bug 761930 - Multi-process support for Device Storage. r=sicking 2012-06-19 16:14:39 -07:00
Ryan VanderMeulen 6e7f656ffd Backout b3f14a850269, f9d877d78294, and c7335ca109a4 due to build bustage. 2012-07-14 00:01:52 -04:00