Commit Graph

35 Commits

Author SHA1 Message Date
Chris Jones
3775fecc82 b=550026 Cancel PluginCrashed when PluginModule is deleted. r=bsmedberg 2010-03-08 09:16:02 +13:00
Chris Jones
69439d0740 Bug 550026: Don't deliver NotifyError() when RPCChannel code is on the stack. r=bent 2010-03-11 23:21:58 -06:00
Chris Jones
9961ca115c Followup to bug 545342: atomically refcount the dequeue task. r=bent 2010-03-11 16:24:15 -06:00
Chris Jones
7fd74b1a80 Merge backout 2010-03-11 05:07:51 -06:00
Chris Jones
415f85da1a Backing out bug 550026 due to orange 2010-03-11 05:07:42 -06:00
Chris Jones
a839ebda02 Bug 549888: Part 1: Let the channel listener decide how to mediate RPC races, defaulting to "child wins". r=bent 2010-03-11 01:35:30 -06:00
Chris Jones
148296d96a b=550026 Don't call PluginCrashed while plugin code is still on the stack r=bsmedberg 2010-03-08 09:16:02 +13:00
Josh Matthews
73c4737e85 Bug 545342: Cancel dequeue task on channel error. r=cjones 2010-02-15 20:47:00 +13:00
Chris Jones
cc7e7893c6 Bug 545455, part 2: Expose override-able hooks for top-level IPDL actors to be notified on stack entrance/exit. r=bent
--HG--
extra : rebase_source : e50ede6dbffc9d864ba62eda6d2a622c8b99dece
2010-02-16 12:44:22 -06:00
Chris Jones
53aa420578 Bug 545455, part 1: Track when RPCChannel code is first pushed on the C++ stack and last popped. r=bent
--HG--
extra : rebase_source : 1bf50aac0f5da1c4322347b42b24e72215543915
2010-02-16 12:44:21 -06:00
Jim Mathies
5df2fb9a6c e10s bustage fix after bad merge. 2010-02-12 00:31:08 -06:00
Chris Jones
b7393756e9 Bug 540004, part 3: Add a ShouldContinue() interface to IPDL actors that allows them to decide how a hang should be treated. r=bent
--HG--
extra : transplant_source : m%5E%40%9FYJ%EFI%9F%E5%25s%8E%1A%AF%BEQ%01va
2010-02-09 18:02:55 -06:00
Chris Jones
83599906ac Bug 540004, part 2: Detect hangs while awaiting synchronous IPC replies (on POSIX). r=bent
--HG--
extra : transplant_source : %B8U2%20%5C%1B%06%85%F4%23%DA%CCw%C7%CB%D1%F2%9D%16%1A
2010-02-09 18:02:54 -06:00
Jim Mathies
c877b84ecc Bug 538918 - [OOPP] Modal system dialogs cause UI freeze w/windowless controls. r=bent, cjones.
--HG--
extra : transplant_source : %28B%08h%F29L%BE%BBEh%E8%92%22%2A%8E%A8%00F%83
2010-02-09 16:34:38 -06:00
Chris Jones
eebed3acd2 Bug 540886, part 2: Offer a BlockChild() interface to RPC protocols that allows parents to prevent children from sending messages back of their own volition until the parent calls UnblockChild(). r=bent
--HG--
extra : transplant_source : %2A%A7%D7%2C%7B%90%1B%9BZS%E5%3E%E1%A1M%F2%A7P%99E
2010-01-27 00:41:32 -06:00
Chris Jones
2649cb4bf4 Bug 521929, part 2: Save racy RPC replies onto a special stack until they're the reply to the right out-call. r=bent
--HG--
extra : transplant_source : %95R%85%B4%AD%0F%3D%9B%A5%18n%9B%94%BF%DA%9A%1BE%40%AC
2010-01-21 20:04:10 -06:00
Chris Jones
4572a1920a bug 529005: detect child process shutdowns vs. crashes, and expose this information to IPDL actors in a new |ActorDestroy(why)| interface. also ensure that subprotocol actors are notified of shutdown and cleaned up properly. r=bsmedberg r=bent 2009-12-03 02:16:28 -06:00
Ben Turner
cafe07f11b Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Chris Jones
024372f081 fix bugs in RPC race resolution 2009-10-09 01:21:39 -05:00
Chris Jones
264a18bfdc hack around lack of C99 format specifiers on Windows 2009-10-08 18:07:24 -05:00
Chris Jones
0f4bfc1b8d followup to RPC race resolution --- convert RPC_DEBUGABORT into RPC_ASSERT, and pre-emptively fix potential spurious race detector alarms 2009-10-08 17:41:18 -05:00
Chris Jones
6c79e4bbd2 add racy RPC resolution. also add better debugging info and fix two shared-memory-race bugs. 2009-10-08 16:44:43 -05:00
Chris Jones
3ecb69991d fix sync/RPC deadlock bug that came to me in a dream. r=mr.sandman 2009-09-22 10:23:29 -05:00
Chris Jones
d484a65e38 bug 517923: support serializing ns*Strings that represent NULL, use this mechanism in PluginInstanceParent/PluginModuleChild. also add basic crash-handling to *Channel code and some NS_OVERRIDE annotations. 2009-09-21 21:02:15 -05:00
Chris Jones
eac97adcbe unblock RPC waiters for async messages, for realz 2009-09-11 02:28:09 -05:00
Chris Jones
f628e59149 fix bug introduced by d0d751ed8c3e where receiving multiple async messages while awaiting an RPC reply could screw things up. async messages no longer unblock RPC waiters. 2009-09-11 01:05:42 -05:00
Chris Jones
88d2f89607 make RPC unblock for async and sync, as it supposed to have 2009-09-10 18:54:37 -05:00
Chris Jones
d9919b3117 simplify some *Channel code. enforce more SyncChannel invariants 2009-08-19 10:44:56 -05:00
Chris Jones
0a08700f4a add race detection to RPC channels. simplify message processing, be stricter about layering guarantees. add more comments and assertions to channel code. 2009-08-19 00:22:01 -05:00
Chris Jones
6a1b89d424 stop flirting with MSVC8 name resolution bug. 2009-07-20 11:37:18 -05:00
Chris Jones
957ee2b153 >--> @ MSVC8, v4 2009-07-15 17:33:37 -05:00
Chris Jones
5e2cfbac7f another stab at fixing MSVC8 build bustage. 2009-07-15 17:06:30 -05:00
Chris Jones
65a5143fa4 first cut at AsyncChannel and SyncChannel. only RPCChannel is currently under warranty. 2009-07-13 16:55:04 -05:00
Chris Jones
526ba058ae add initial support for protocol management in IPDL. small changes to existing protocols in preparation for merge from libchromiumipc. 2009-07-02 00:45:19 -05:00
Benjamin Smedberg
14ce29cc49 ipc/glue imported verbatim from http://hg.mozilla.org/users/bturner_mozilla.com/libchromiumipc/ 2009-06-29 14:38:29 -04:00