ipc/glue/RPCChannel.cpp
abedbe690837bf3e9107b247c6df2f92cd4028ba
created 2010-05-21 11:48 -0400
pushed unknown
Jim Mathies Jim Mathies - Bug 558986 - detect and resolve races between MS-COM RPC and IPDL RPC by implementing IMessageFilter and processing pending IPDL RPC calls while waiting for MS-COM RPC responses. Original patch by bsmedberg, r=cjones/jimm/ehsan with followup fixes by Jim Mathies, r=bsmedberg
565722cc62a7505970ebb4fc972609dd5249f082
created 2010-05-17 14:36 -0500
pushed unknown
Jim Mathies Jim Mathies - Bug 558986 - Backout of fix for crashes in TSF with Flash/Silverlight on tablets. CLOSED TREE
65af0d77ff880170880e761b8cb56c0d1939b8ea
created 2010-05-17 11:33 -0500
pushed unknown
Benjamin Smedberg Benjamin Smedberg - Bug 558986 - Fix for crashes in TSF with Flash/Silverlight on tablets (OLE/COM nested event loops). r=cjones, jimm, ehsan.
0de1a3677f6a908cb5feabbe26806d4ddf5c2295
created 2010-05-06 15:17 -0400
pushed unknown
Gavin Sharp Gavin Sharp - Bug 552889: avoid spamming stderr in release builds, r=cjones
c5e9ea1e9b06352642a0d773ce00efe45225b0f9
created 2010-04-28 11:01 -0400
pushed unknown
Benjamin Smedberg Benjamin Smedberg - Bug 561871 part B: don't use Windows events to enter/exit a nested event loop within an RPC stack frame, because delivery of those events isn't always associated with the correct stack frame, and also because the events can be lost if they race with an incoming RPC reply message. Instead, keep a linked list (on the stack) of RPC frames globally and per-channel, to associate requests to enter a nested event loop with the correct frame, r=jimm
d1c2957fa3696efb93249f8e04574b311ba93a11
created 2010-04-27 00:42 -0500
pushed unknown
Chris Jones Chris Jones - Bug 545733: |const|-ify some *Channel methods. r=bent
e3cfb6ca54c9dc95792388b61ca06f92741fc963
created 2010-04-22 18:53 -0500
pushed unknown
Chris Jones Chris Jones - Bug 544518: Send Messages directly through the Transport on the IO thread rather than through a no-added-value AsyncChannel indirection. r=bent
0c41bf595db49be328ed792ce3d0d31b877c071e
created 2010-03-24 16:49 -0500
pushed unknown
Chris Jones Chris Jones - Bug 554262 - [OOPP] Silverlight context menu hangs the browser. r=bent, jmathies.
5a1cf671bd6157d5a4c7454f544bf52136a89e15
created 2010-03-24 16:49 -0500
pushed unknown
Jim Mathies Jim Mathies - Bug 553606 - [OOPP] Limit spin loop to a call depth of one. r=bent.
add0b286ced6621754d5d65ae67d576f2f8802d4
created 2010-03-24 00:52 -0500
pushed unknown
Chris Jones Chris Jones - Bug 554466: Only EnqueuePending when there's been an rpc out-call. r=bent
a135d2f38e1cdbc352d0fd7bad4a32c39f18be15
created 2010-03-19 01:57 -0500
pushed unknown
Chris Jones Chris Jones - Bug 552014 - Treat RPC replies received in an event loop nested inside the one from which the call was made as if they had arrived out of order. r=jimm.
7828c0055b2d7a141a8682fbc1bf769c5063c02c
created 2010-03-18 17:52 -0500
pushed unknown
Chris Jones Chris Jones - Bug 552014: Don't run OnMaybeDequeueOne from a nested context. r=bent
5e378936ee76269db4b011fd32464e2311b859d8
created 2010-03-18 17:52 -0500
pushed unknown
Chris Jones Chris Jones - Bug 533055: Part 3: Track |Message|s being processed on the C++ stack and offer a DumpRPCStack() method to print them. r=bent
b93d6faaa64cdc1fe4394e2bd18e29b5cd3cfe90
created 2010-03-18 17:52 -0500
pushed unknown
Chris Jones Chris Jones - Bug 552294: *Channel::OnError must run atomically. r=bent
a63565eb49cfceeb537ccc8beafec65d862a0db2
created 2010-03-08 09:16 +1300
pushed unknown
Chris Jones Chris Jones - b=550026 Cancel PluginCrashed when PluginModule is deleted. r=bsmedberg
77710d3dec6fcb238450f822769e2ca67824b878
created 2010-03-11 17:17 -0800
pushed unknown
Benjamin Smedberg Benjamin Smedberg - Bug 545342 - Remove the RPCChannel assertions about mismatched RPC stacks because mismatched stacks are normal when asynchronous messages are pending which cause secondary RPC messages, r=cjones
e968afb45a8d912d3673fbdd47b4ddc6d93fdbb1
created 2010-03-11 05:07 -0600
pushed unknown
Chris Jones Chris Jones - Merge backout
f6d40b96a97869f3798dc989b93e3c180ca114da
created 2010-03-11 05:07 -0600
pushed unknown
Chris Jones Chris Jones - Backing out bug 550026 due to orange
f3827fb3e0de089b6d0bdc15345e59e69ca0901a
created 2010-03-11 01:35 -0600
pushed unknown
Chris Jones Chris Jones - Bug 549888: Part 1: Let the channel listener decide how to mediate RPC races, defaulting to "child wins". r=bent
e9caa524bb5cf81cf03dbe3129578e8acb339c29
created 2010-03-11 01:35 -0600
pushed unknown
Chris Jones Chris Jones - Bug 546035: Check if we're still connected before dispatching a received message. r=bsmedberg
42598d91ac4f6e922c2ceb1d8db61520351e63fc
created 2010-03-08 09:16 +1300
pushed unknown
Chris Jones Chris Jones - b=550026 Don't call PluginCrashed while plugin code is still on the stack r=bsmedberg
80f9f451e346272ba009036d5b1a6d72645afd84
created 2010-02-15 20:47 +1300
pushed unknown
Josh Matthews Josh Matthews - Bug 545342: Cancel dequeue task on channel error. r=cjones
dbfb36b8b3816efe95e7e2ee35ebeb007641cc3d
created 2010-02-16 12:44 -0600
pushed unknown
Chris Jones Chris Jones - Bug 545455, part 1: Track when RPCChannel code is first pushed on the C++ stack and last popped. r=bent
9efba974e6f1effcb6848468dfa540a0ef742a9e
created 2010-02-24 15:59 -0600
pushed unknown
Chris Jones Chris Jones - Bug 548214: Seqno's go up in the parent, down in the child. r=bsmedberg
23e78dba9f94315c844cf0b5fcf2604febc040e0
created 2010-02-19 12:45 -0800
pushed unknown
Ben Turner Ben Turner - Bug 547247 - '[OOPP] Crash [@ RtlEnterCriticalSection ] when ending mozilla-runtime on a page that does not contain a plugin'. Bustage fix
094b093049691b471adf208f503e8473eab8e832
created 2010-02-19 12:39 -0800
pushed unknown
Ben Turner Ben Turner - Bug 547247 - '[OOPP] Crash [@ RtlEnterCriticalSection ] when ending mozilla-runtime on a page that does not contain a plugin'. r=bsmedberg.
e4149d40e166bd0c34f0db8c4733733ece0c798c
created 2010-02-18 12:12 -0800
pushed unknown
Ben Turner Ben Turner - Bug 546797 - '[OOPP] Assertion in RPCChannel's EnqueuePendingMessages: ABORT: expected mDeferred to have 0 or 1 items' r=jimm
c5ca3076da1bd0ff7bd0afb8e47304dc893ffdfa
created 2010-02-11 17:33 -0600
pushed unknown
Chris Jones Chris Jones - Bug 545757: Don't post replies to the IO thread after a connection error. r=bent
d19be3f707cb6d35848dd8eb5dc04451bb362b2b
created 2010-02-10 15:41 -0600
pushed unknown
Chris Jones Chris Jones - Bug 545338: Make the IPC hang detector tolerate spurious wake-ups. Possibly temporary. irc-r=jimm
e70a61a00dad7d797a3e2d9de3e26c40535edc1f
created 2010-02-09 18:02 -0600
pushed unknown
Chris Jones Chris Jones - Bug 540004, part 2: Detect hangs while awaiting synchronous IPC replies (on POSIX). r=bent
6cd32ccca1fec0bda9427e07a6275c94d9f1eea6
created 2010-02-09 17:04 -0600
pushed unknown
Chris Jones Chris Jones - Fix linux bustage.
acdee57eefffc867cde8d82387860456e990922e
created 2010-02-09 16:34 -0600
pushed unknown
Jim Mathies Jim Mathies - Bug 538918 - [OOPP] Modal system dialogs cause UI freeze w/windowless controls. r=bent, cjones.
bb789c6c77132b9b4551fe2d5f79f6d98ad59450
created 2010-01-27 02:17 -0600
pushed unknown
Chris Jones Chris Jones - Follow-up to bug 540886: address review comments I forgot to before pushing.
b89339a2523d8ace64c6ce60fa38fc8eb2067c27
created 2010-01-27 00:41 -0600
pushed unknown
Chris Jones Chris Jones - 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
62cc92f9dced0b4e4d82a8e4406586759a20c8b7
created 2010-02-03 17:17 -0500
pushed unknown
Benjamin Smedberg Benjamin Smedberg - Bug 516515 - Don't initialize XPCOM in plugin processes, r=cjones
925601df843fdb59381d9c9a5e26961b8ae855c1
created 2010-01-21 20:04 -0600
pushed unknown
Chris Jones Chris Jones - Bug 521929, part 2: Save racy RPC replies onto a special stack until they're the reply to the right out-call. r=bent
ca51ffe72682739dbd2bac31bf35112747fc8141
created 2010-01-21 20:04 -0600
pushed unknown
Chris Jones Chris Jones - Bug 521929, part 1: Add a "seqno" field to synchronous messages. r=bent
7efa9bc5cdba64c6b10248e557395290a63728f3
created 2009-12-09 17:15 -0600
pushed unknown
Chris Jones Chris Jones - bug 533587: process RPC in-calls deferred because of races until "later". in-person r=bent
7ebfbec7521c2e98786bad0d0f00720f2bb2d3e1
created 2009-12-03 02:16 -0600
pushed unknown
Chris Jones Chris Jones - 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
115f3d4699caae6997c6e5671fa9f4a43e049a64
created 2009-11-12 14:46 -0800
pushed unknown
Ben Turner Ben Turner - Fix bustage
3b841444642cdb94844f537239df9580ffe0e329
created 2009-11-12 14:16 -0800
pushed unknown
Ben Turner Ben Turner - Bug 525792 - 'Fix leaks running mochitests'.
80a3ac9febb75f8798322fa280aef665a319efcd
created 2009-10-27 16:32 -0500
pushed unknown
Chris Jones Chris Jones - bug 524767: add better error logging to *Channel. no r?, logging only
aa582e9900eff046e024c554c449279f892bf757
created 2009-10-19 11:28 -0500
pushed unknown
Chris Jones Chris Jones - bug 521324: call the multi-threaded GLib initialization function. r=karlt
5658b405d6221e20446d255b9b557d055ff4730d
created 2009-10-09 01:21 -0500
pushed unknown
Chris Jones Chris Jones - fix bugs in RPC race resolution
999714b20f33f08b6ef1b44fde1f46d791b2f6b2
created 2009-10-08 17:41 -0500
pushed unknown
Chris Jones Chris Jones - followup to RPC race resolution --- convert RPC_DEBUGABORT into RPC_ASSERT, and pre-emptively fix potential spurious race detector alarms
078feed8b303a1a12eb6f802deb2631906c28bb0
created 2009-10-08 16:44 -0500
pushed unknown
Chris Jones Chris Jones - add racy RPC resolution. also add better debugging info and fix two shared-memory-race bugs.
91ae1b1cf67e209c00af05669ae5b296ea195177
created 2009-10-08 12:11 -0700
pushed unknown
Ben Turner Ben Turner - Add threadsafety assertions to plugin code
8d05283ce5621bff8b974b8e4438971d57439580
created 2009-09-22 10:23 -0500
pushed unknown
Chris Jones Chris Jones - fix sync/RPC deadlock bug that came to me in a dream. r=mr.sandman
1dad436eaa992dcd91b0e936c82b5781dadc1962
created 2009-09-21 21:02 -0500
pushed unknown
Chris Jones Chris Jones - 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.
73df30df33152af465834e49fe539fa3dfe09f61
created 2009-09-14 13:00 -0700
pushed unknown
Ben Turner Ben Turner - Fix recursive locking when unblocking an RPC channel for a sync message and add minimal error handling for sync messages.
9057b7265dba4e7bbbaba44e0672c0cbda96dafa
created 2009-09-11 02:28 -0500
pushed unknown
Chris Jones Chris Jones - unblock RPC waiters for async messages, for realz
fd55e5a42799bb99dab1efff50781c308245a192
created 2009-09-11 01:05 -0500
pushed unknown
Chris Jones Chris Jones - 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.
d0d751ed8c3e82aa203fc1775411b52835728a85
created 2009-09-10 18:54 -0500
pushed unknown
Chris Jones Chris Jones - make RPC unblock for async and sync, as it supposed to have
2d5c46725f895823d6066be414387e9668cba3ec
created 2009-08-19 10:44 -0500
pushed unknown
Chris Jones Chris Jones - simplify some *Channel code. enforce more SyncChannel invariants
d1b77333a8735f0b18eb9a07f87e67770009a135
created 2009-08-19 00:22 -0500
pushed unknown
Chris Jones Chris Jones - add race detection to RPC channels. simplify message processing, be stricter about layering guarantees. add more comments and assertions to channel code.
b5be2c934b8f42ab614e9973e867e97c37c8fd99
created 2009-08-07 16:13 -0700
pushed unknown
Ben Turner Ben Turner - Add extremely basic support for unblocking in the event of a bad message
2a529f66879fba5ed313d2f32a2a994d35f503fb
created 2009-07-20 11:37 -0500
pushed unknown
Chris Jones Chris Jones - stop flirting with MSVC8 name resolution bug.
b40bf8d9fb35a9ced9c26bae6a239bc73e171d5d
created 2009-07-15 16:38 -0500
pushed unknown
Chris Jones Chris Jones - another stab in the dark at fixing MSVC8 bustage: put Result code enum in anonymous namespace
223a877af597c877ffb7b5543b72a5f1a030ffb1
created 2009-07-15 13:41 -0500
pushed unknown
Chris Jones Chris Jones - attempt to fix build bustage when using MSVC8.
1769c830e612ef844c2b7df27028f570e34af760
created 2009-07-14 00:12 -0500
pushed unknown
Chris Jones Chris Jones - add IPDL test harness and the mountains of code that entails. add |bool| type to IPDL. fix bugs in nascent async/sync channels.
less more (0) -60 tip