Commit Graph

70 Commits

Author SHA1 Message Date
Chris Jones
024372f081 fix bugs in RPC race resolution 2009-10-09 01:21:39 -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
Ben Turner
d8f6fca3ab Add threadsafety assertions to plugin code 2009-10-08 12:11:13 -07: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
Ben Turner
4c2446fda0 Fix recursive locking when unblocking an RPC channel for a sync message and add minimal error handling for sync messages. 2009-09-14 13:00:31 -07: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
Ben Turner
1088815043 Add extremely basic support for unblocking in the event of a bad message 2009-08-07 16:13:20 -07:00
Chris Jones
6a1b89d424 stop flirting with MSVC8 name resolution bug. 2009-07-20 11:37:18 -05:00
Chris Jones
7662f0b63a another stab in the dark at fixing MSVC8 bustage: put Result code enum in anonymous namespace 2009-07-15 16:38:55 -05:00
Chris Jones
1f2aa76f62 attempt to fix build bustage when using MSVC8. 2009-07-15 13:41:09 -05:00
Chris Jones
d7947d5455 add IPDL test harness and the mountains of code that entails. add |bool| type to IPDL. fix bugs in nascent async/sync channels. 2009-07-14 00:12:50 -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