Commit Graph

444 Commits

Author SHA1 Message Date
Chris Jones
4539dc37ca Bug 594878, part 2: Add a SharedMemoryBasic impl that uses /dev/ashmem on android. r=mwu 2010-09-10 16:45:59 -05:00
Chris Jones
d6d1dae10b Bug 594878, part 1: Factor out chromium-implemented SharedMemoryBasic in preparation for an android-specific impl. r=joe
--HG--
rename : ipc/glue/SharedMemoryBasic.h => ipc/glue/SharedMemoryBasic_chromium.h
2010-09-10 16:45:59 -05:00
Chris Jones
4820da2166 Merge m-c --> cedar 2010-09-08 17:25:30 -05:00
Chris Jones
9454ae60b8 Bug 592866: Allow Shmem to be used in IPDL unions. r=bent a=blocking-2.0 2010-09-08 13:27:52 -05:00
Josh Aas
ccef2eb783 Bug 592951: Use 'posix_spawnp' to launch child processes on Mac OS X. r=ted a=blocking-b6+ 2010-09-10 13:09:30 -04:00
Oleg Romashin
7ff38c48b1 Merge m-c: 09872e2e2130 -> cedar, (qt build bustage fix) 2010-09-01 12:07:19 -07:00
Chris Jones
9f41678a5d Bug 592002: Out-of-turn RPC replies should be taken into consideration when checking for races, or else we can defer in-calls when we shouldn't. r=bsmedberg a=blocking-beta6 2010-09-01 13:01:50 -05:00
Oleg Romashin
bd3aa71c63 Merged m-c: 51d17027ff45 -> cedar 2010-09-01 09:36:29 -07:00
Oleg Romashin
d6e7e30d34 Bug 556487 - Plugin Child/Parent async API. r=roc,jones.chris.g a=blocking2.0 2010-09-15 09:02:44 -07:00
Chris Jones
49048c0d61 Merge m-c --> cedar
--HG--
rename : layout/style/test/test_hover.html => layout/style/test/hover_helper.html
2010-08-31 00:35:03 -05:00
Chris Jones
ac0063f9b0 Bug 540097: Add a ProcessingError(what) notification interface for top-level actors. r=bent 2010-08-20 18:24:40 -05:00
Ted Mielczarek
c169279a76 bug 587747 - Implement writing of minidumps from hang detection on OS X. r=cjones a=blocking
--HG--
extra : rebase_source : fef081b5b0fae828ecc0c2678d83787778dfc70d
2010-08-27 09:32:45 -04:00
Josh Aas
5676c8d8f2 Bug 590857: Fix problematic usage of 'size_t' in IPC code, 'size_t' size depends on architecture and sending it via IPC directly can break cross-architecture IPC. Part of this patch was written by Ben Turner. r=cjones a=blocking-b6 2010-08-31 13:51:51 -04:00
Josh Aas
85e2b9463a Backed out changeset 52388a9a6337, bug 592951. a=me 2010-09-08 18:19:51 -04:00
Josh Aas
2993a12ec8 Bug 592951: Use 'posix_spawnp' to launch child processes on Mac OS X. r=ted a=blocking-b6+ 2010-09-08 16:24:30 -04:00
Chris Jones
ebdb41468e Comment fix so I add a=backout 2010-08-19 19:05:51 -05:00
Chris Jones
c4a3241516 Bug 588216: Avoid race between IO-thread loop->PostTask() and main-thread loop->SetNestableTasksAllowed() that led to Tasks being ignored. r=bent 2010-08-19 15:31:47 -05:00
Daniel Holbert
b7171271dd Bug 666989: Fix unused-but-set GCC 4.6 warning in Shmem::AssertInvariants. r=cjones 2011-06-24 14:01:30 -07:00
Benjamin Smedberg
3a5f09a601 Revert bug 595337 because of persistent leaks running mochitests, and bug 556487 because of in-process test failures (crashes) and a reftest failure. 2010-09-14 14:50:24 -07:00
Oleg Romashin
728d67a018 Bug 556487 - Plugin Child/Parent async API. r=roc,jones.chris.g a=blocking2.0 2010-09-14 12:01:05 -07:00
Ted Mielczarek
491acee0d8 bug 559228 - Implement multi-process crash reporting on Mac. r=bsmedberg a=blocking
--HG--
extra : rebase_source : 83e8073a3c8e47f8fec39b123221f80db89941e7
2010-08-16 15:05:09 -04:00
Doug Turner
7c50d1ab8c Merge from e10s clone. a=dougt 2010-08-10 18:33:38 -07:00
Benedict Hsieh
4be16266ab Bug 535077 - Fixes hang caused by failure to execute sync launch r=cjones a=blocking2.0 2010-08-10 14:14:10 -07:00
Michael Wu
608574db24 Bug 556644 - 1. Move omnijar setup to NS_InitXPCOM and use omni.jar by default, r=bsmedberg a=blocking2.0 2010-08-10 15:08:06 -07:00
Benoit Girard
d5759eca95 Bug 557225 - Load the plugin-container from the App Bundle. r=cjones 2010-07-19 18:35:45 -04:00
Chris Jones
dce4511b26 Bug 525181, part 2: Implement protocol state machines in C++. r=bent 2010-07-15 14:27:43 -05:00
timeless@mozdev.org
4e044ef7bb Bug 576384 AsyncChannel::ReportConnectionError case ChannelTimeout and case ChannelClosing are missing break
r=cjones

--HG--
extra : rebase_source : effdbd4b77048842387f834bd59495beae2d9875
2010-07-02 17:36:15 +03:00
timeless@mozdev.org
7b8177e5e1 Bug 576383 AsyncChannel::MaybeHandleError case MsgProcessingError is missing break
r=cjones

--HG--
extra : rebase_source : 4a595a81bcbd43bd37f0b5886b0a9f5c3a5e41fe
2010-07-02 17:33:19 +03:00
Benjamin Smedberg
4d172dd53d Merge mozilla-central, including the Electrolysis changes, into the branch for bug 568691. 2010-07-01 11:55:57 -04:00
Benjamin Smedberg
762def30bb Merge mozilla-central into the static-xpcom-registration branch. 2010-06-23 17:26:25 -04:00
Chris Jones
710c313ec5 Bug 570099: Allow Shmems to be used in IPDL structs. r=benjamn 2010-06-23 13:59:07 -05:00
Benjamin Smedberg
1af2f3576f Bug 449129 - abort a plugin process if a plugin attempts to spin an event loop while painting, r=jmathies 2010-06-23 10:18:00 -04:00
Chris Jones
a6258b9dae Bug 570096: Implement serialization of a grab-bag of gfx types. r=joe 2010-06-21 15:35:48 -05:00
Benjamin Smedberg
9045c05660 Bug 568691 part A - register static and binary components using data tables rather than programmatic nsIComponentRegistrar methods. This part contains the important needs-review bits of the change: part B contains the mechanical changes to each module in order to actually get a working build. Part C will contain changes necessary to register JS components from .manifest files 2010-06-10 14:11:11 -04:00
Jim Mathies
75a4de084c Bug 569500 - e10s: /netwerk/test/unit_ipc/* fails on windows 7. (patch re-pushed with headers needed in release builds.) r=bsmedberg. 2010-06-30 22:07:50 -05:00
Jim Mathies
4495dfe6ee Backout of bug 569500 due to opt build bustage and possible debug xpshell test timeouts. 2010-06-30 21:09:38 -05:00
Jim Mathies
56782c2715 Bug 569500 - e10s: /netwerk/test/unit_ipc/* fails on windows 7 r=bsmedberg 2010-06-30 15:51:44 -07:00
Michael Wu
01a2cef59b Bug 574120 - Add support for IPC on Android to everything else, r=dougt 2010-06-25 13:29:43 -07:00
Michael Wu
1cc0b6840d Bug 574120 - Add Android support to IPC code, r=cjones 2010-06-25 11:39:02 -07:00
Doug Turner
4719dd0705 Automerge w mozilla-central 2010-06-24 14:06:13 -07:00
Jason Duell
d194b9d486 Merge from m-c.
Fair amount of merge conflicts.

Biggest item was changes to nsHttpChannel from web sockets changes.

Other likely suspects if things are borken:

nsFrameLoader.cpp:
    - nsFrameLoader::EnsureMessageManager: pass "this" (orig e10s code) or
      nsnull (m-c) to local process call to new nsFrameMessageManager(),
      callback arg?  Smaug said null.
    - only calling SetCallBackData for local case.  also +r smaug.

nsPrefBranch.cpp had fairly extensive merge conflicts.

nsChromeRegistry had lots of changes.

Dougt did most of the non-necko changes (thanks).

--HG--
rename : netwerk/protocol/http/nsHttpChannel.cpp => netwerk/protocol/http/nsHttpChannelAuthProvider.cpp
rename : netwerk/protocol/http/nsHttpChannel.h => netwerk/protocol/http/nsHttpChannelAuthProvider.h
2010-06-22 17:33:57 -07:00
Olli Pettay
58b4f71840 m-c to e10 merge 2010-05-24 17:45:59 +03:00
Doug Turner
3ad0032930 Merged with MC. Hand merged netwerk/protocol/http/src/nsHttpHandler.cpp
also removed modules/plugin/default*
2010-05-17 08:59:15 -07:00
Chris Jones
9327ed8dcc Merged m-c 2010-05-13 18:04:53 -05:00
Doug Turner
fe405e740c merge with m-c. resolved conflicts in:
U chrome/src/nsChromeRegistry.cpp
U content/base/src/Makefile.in
U dom/base/nsDOMClassInfo.cpp
U toolkit/toolkit-tiers.mk

--HG--
rename : toolkit/mozapps/extensions/test/unit/test_bug541420.js => toolkit/mozapps/extensions/test/xpcshell/test_bug541420.js
2010-05-11 11:09:54 -07:00
Benoit Girard
4fe7201af4 Bug 528146: Run plug-in code on the thread that starts in main(). r=cjones
--HG--
rename : dom/plugins/PluginThreadChild.cpp => dom/plugins/PluginProcessChild.cpp
rename : dom/plugins/PluginThreadChild.h => dom/plugins/PluginProcessChild.h
rename : ipc/ipdl/test/cxx/IPDLUnitTestThreadChild.cpp => ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.cpp
rename : ipc/ipdl/test/cxx/IPDLUnitTestThreadChild.h => ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.h
2010-05-10 23:18:00 -05:00
Chris Jones
41d4381920 Bug 565462: Implement operator== for IPDL structs and unions. r=bsmedberg 2010-05-22 14:35:42 -05:00
Chris Jones
8cd4f6e0b8 Tests for bug 560000 2010-05-22 14:35:40 -05:00
Chris Jones
0f31d5ef38 Bug 562741: Allow |Shmem|s to be shared across different protocol trees. r=bent 2010-05-22 14:35:33 -05:00
Chris Jones
e3145e0a2f Bug 562741: Refcount |SharedMemory|s. r=joedrew 2010-05-22 14:35:32 -05:00
Chris Jones
39eb188564 Bug 565844: Distinguish between illegal-value and couldn't-process errors in IPDL error messages. r=bent 2010-05-22 14:35:29 -05:00
Doug Turner
8f97a20153 Merge with m-c. no hand edits 2010-04-29 21:04:50 -07:00
Jim Mathies
67068143b5 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
--HG--
extra : rebase_source : 214029d3188f8aa00948e0dcdc3c11cd279d1569
2010-05-21 11:48:34 -04:00
Jim Mathies
2a9af3f851 Bug 558986 - Backout of fix for crashes in TSF with Flash/Silverlight on tablets. CLOSED TREE 2010-05-17 14:36:43 -05:00
Benjamin Smedberg
e43e305194 Bug 558986 - Fix for crashes in TSF with Flash/Silverlight on tablets (OLE/COM nested event loops). r=cjones, jimm, ehsan. 2010-05-17 11:33:34 -05:00
Chris Jones
d53b8a18d0 Merged m-c 2010-04-27 01:53:06 -05:00
Chris Jones
4665be334c Bug 545733: |const|-ify some *Channel methods. r=bent 2010-04-27 00:42:59 -05:00
Chris Jones
ce3499a322 Bug 555275: Implement a DeallocShmem() interface. r=bent 2010-04-26 20:11:40 -05:00
Doug Turner
ed6494b616 merge with m-c. 2010-04-26 23:17:51 -07:00
Benjamin Smedberg
67995408eb 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
--HG--
extra : rebase_source : 694186dde4643904752c67e0c6eb7a6ad1dd2082
2010-04-28 11:01:09 -04:00
Oleg Romashin
7a2ec023c4 Bug 553904 - Child tab process crashes on attempt to initialize child plugin process. r=bent.mozilla 2010-04-20 21:43:51 +03:00
Chris Jones
09869cfb77 Merge mozilla-central 2010-04-16 01:34:35 -05:00
Joe Drew ext:(%20and%20Chris%20Jones%20%3Cjones.chris.g%40gmail.com%3E)
8ed356359a Bug 548437: Add a SysV shmem subtype of SharedMemory. r=dougt 2010-04-16 00:29:16 -05:00
Josh Matthews
7354faf277 b=539406 retain existing listener in AyncChannel for GeckoChildProcessHost::OnChannelConnected r=cjones 2010-04-12 12:13:00 +12:00
Oleg Romashin
8de514e284 Merged with mozilla-central 2010-04-07 06:59:04 -04:00
Doug Turner
c15f159231 merge from m-c. manually merging modules/plugin/test/testplugin/nptest.cpp dom/plugins/PluginModuleChild.cpp. 2010-03-26 14:22:48 -07:00
Chris Jones
1adcc7f5e1 Bug 557011: Ensure OOP crashreporter has been initialized on mac. r=bsmedberg 2010-04-12 15:47:47 -05:00
Gavin Sharp
508e0b8635 Bug 552889: avoid spamming stderr in release builds, r=cjones 2010-05-06 15:17:08 -04:00
Jim Mathies
d70b2de416 Bug 545338 - RPCChannel should use events rather than thread messages for NotifyWokerThread. r=bent. 2010-03-25 16:53:10 -05:00
Chris Jones
e4aea6bfca Followup to bug 544936: Open child process handles with more privileges. r=bsmedberg 2010-03-24 19:12:31 -05:00
Chris Jones
06f32ffddd Bug 554262 - [OOPP] Silverlight context menu hangs the browser. r=bent, jmathies. 2010-03-24 16:49:54 -05:00
Jim Mathies
0eba287c0f Bug 553606 - [OOPP] Limit spin loop to a call depth of one. r=bent. 2010-03-24 16:49:05 -05:00
Doug Turner
c777c5a314 Bug 547881 - Made a mistake when fixing a nit. r=me 2010-03-24 09:20:36 -07:00
Chris Jones
1a4d37c1ac Bug 554466: Only EnqueuePending when there's been an rpc out-call. r=bent 2010-03-24 00:52:47 -05:00
Chris Jones
495cbf8111 Bug 544518: Send Messages directly through the Transport on the IO thread rather than through a no-added-value AsyncChannel indirection. r=bent 2010-04-22 18:53:30 -05:00
Oleg Romashin
494639846e Bug 553904 - Child tab process crashes on attempt to initialize child plugin process. r=bent.mozilla
--HG--
extra : rebase_source : 2a018b5f9c74a713e493643e611b330e08e1afd8
2010-04-20 21:43:51 +03:00
Ben Turner
57ca71f5eb Bug 558190 - 'Plugin container process name needs to be more appropriate'. r=bsmedberg
--HG--
rename : ipc/app/mozilla-runtime.exe.manifest => ipc/app/plugin-container.exe.manifest
2010-04-09 15:40:14 -07:00
Ben Turner
d037a570d7 Backed out changeset 25879ce33e7a 2010-04-09 20:57:30 -07:00
Ben Turner
915b42cb28 Bug 558190 - 'Plugin container process name needs to be more appropriate'. r=bsmedberg
--HG--
rename : ipc/app/mozilla-runtime.exe.manifest => ipc/app/plugin-container.exe.manifest
2010-04-09 15:40:14 -07:00
Chris Jones
c049a4f02b Second followup to bug 542053; missed a spot. 2010-04-09 15:24:41 -05:00
Chris Jones
21fa5fb2f2 Bustage followup to bug 542053. 2010-04-09 15:21:08 -05:00
Chris Jones
8a134203f8 Bug 542053: Set LD_LIBRARY_PATH=[GRE dir] for mozilla-runtime on linux. r=bsmedberg 2010-04-09 15:03:08 -05:00
Jim Mathies
f6dc2fd7ce Bug 563381 - Sync AppUserModelID with plugin-container. r=bsmedberg. 2010-05-14 19:25:10 -05:00
Chris Jones
8254dfb7f0 Bug 566054: Add missing error message case, tighten up UNREACHED guard. r=bent 2010-05-14 21:05:34 -05:00
Jason Duell
89ddf40c21 Bug 536279 (send request headers to chrome channel) and bug 536283 (send full nsHttpResponseHead in OnStartRequest) a=jae-seong r=dwitte,jduell 2010-03-23 08:14:36 -07:00
Chris Jones
884cdb0da5 Bug 544623 - IPDL: Shmem buffers should be shared across actor tree. r=bent 2010-03-22 22:02:16 -07:00
Joe Drew
3791d5c283 Bug 544607 - Add Shmem::IsWriteable/Shmem::IsReadable r=cjones
--HG--
extra : rebase_source : 25a2ef756c682bc6a74797025e223fbbc3aaf4d3
2010-03-22 13:33:43 -07:00
Joe Drew
dd4d1abe9c Bug 547881 - need to serialize/deserialize gfxMatrix. r=cjones 2010-03-22 13:04:37 -07:00
Chris Jones
d556eb733c 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. 2010-03-19 01:57:00 -05:00
Chris Jones
8e42c6307b Bug 552014: Don't run OnMaybeDequeueOne from a nested context. r=bent 2010-03-18 17:52:33 -05:00
Chris Jones
3cf309f8cc Bug 533055: Part 3: Track |Message|s being processed on the C++ stack and offer a DumpRPCStack() method to print them. r=bent 2010-03-18 17:52:32 -05:00
Chris Jones
cfe012af2f Bug 552294: *Channel::OnError must run atomically. r=bent 2010-03-18 17:52:28 -05:00
Doug Turner
6ebdbb7c73 Bug 542053 - OOPP do not work in XR builds. Use NS_GRE_DIR when determining exe path of child process. r=bsmedberg
--HG--
extra : rebase_source : abc95f4e1b496b552caa1341ef4b72534c43d3ee
2010-03-15 10:08:27 -07:00
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
Benjamin Smedberg
ed824bba57 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 2010-03-11 17:17:35 -08: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
512c98e2f7 Bug 546035: Check if we're still connected before dispatching a received message. r=bsmedberg 2010-03-11 01:35:26 -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
Jim Mathies
d064ea11c7 Bug 551242 - [OOPP] Hang (caught by hang detector) with flash and alt key. r=bent. 2010-03-10 19:16:44 -06:00
Jim Mathies
814f5bb4ea Bug 550784 - [OOPP] Flash deadlocks during script evals that trigger focus related events. r=bent. 2010-03-10 19:15:55 -06:00
Chris Jones
49b89002de Stub out OOP crashreporter on OS X. b=555714 r=josh 2010-03-30 13:32:53 -04: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
Chris Jones
9f23c33db6 Bug 548214: Seqno's go up in the parent, down in the child. r=bsmedberg 2010-02-24 15:59:23 -06:00
Saint Wesonga
f78442c0ad Bug 523417 - "warning: invoking macro NS_ENSURE_SUCCESS argument 2: empty macro arguments are undefined in ISO C90 and ISO C++98" in DOM worker code. r=jst 2010-02-22 18:41:21 +01:00
Ben Turner
9511d287cb Bug 547247 - '[OOPP] Crash [@ RtlEnterCriticalSection ] when ending mozilla-runtime on a page that does not contain a plugin'. Bustage fix 2010-02-19 12:45:47 -08:00
Ben Turner
ed20dab3cd Bug 547247 - '[OOPP] Crash [@ RtlEnterCriticalSection ] when ending mozilla-runtime on a page that does not contain a plugin'. r=bsmedberg. 2010-02-19 12:39:38 -08:00
Ben Turner
4342186faf Bug 543764 - '[OOPP] Crash [@ PR_Unlock] when ending mozilla-runtime at lastfm.com/listen'. r=bsmedberg+cjones. 2010-02-18 14:21:15 -08:00
Ben Turner
ba4b057ad9 Bug 546797 - '[OOPP] Assertion in RPCChannel's EnqueuePendingMessages: ABORT: expected mDeferred to have 0 or 1 items' r=jimm 2010-02-18 12:12:54 -08:00
Ben Turner
d1936a4540 Bug 543942 - 'crash at [@ free | mozilla::ipc::windows::DeferredSettingChangeMessage::~DeferredSettingChangeMessage() ]' r=jimm. 2010-02-18 12:12:44 -08:00
Ben Turner
97a2c8d37b Bug 545760 - '[OOPP] Fix a few bad DefWindowProc messages that slipped through'. WM_SETICON. r=jimm. 2010-02-18 12:11:31 -08:00
Ben Turner
8e806cd030 Bug 545760 - '[OOPP] Fix a few bad DefWindowProc messages that slipped through'. WM_STYLECHANGED. r=jimm. 2010-02-18 12:11:31 -08:00
Benjamin Smedberg
c473fa8eaf Backed out changeset 4d8d4fd97c4f - bug 543764, because of deadlocks. 2010-02-18 10:27:07 -05:00
Ben Turner
9ce0e5ccd5 Bug 543764 - Crash at PR_Unlock when mozilla-runtime exits/crashes. Ensure that NotifyMaybeChannelError waits until OnChannelError is completely finished running, r=cjones 2010-02-18 09:24:03 -05:00
Jim Mathies
5df2fb9a6c e10s bustage fix after bad merge. 2010-02-12 00:31:08 -06:00
Chris Jones
1de2e347bc Bug 545757: Don't post replies to the IO thread after a connection error. r=bent
--HG--
extra : transplant_source : %AB%07%AF%B8%C0L%CC%82%16%CDH%3Fg%87rH%60ekr
2010-02-11 17:33:53 -06:00
Ben Turner
46d8619058 Bug 545053: Implement IPC hang detection for windows. r=jimm
--HG--
extra : transplant_source : %3E%B1-b%1E%F5%5B%5B%DB%C4%97%19Y%82%3A%28%A7%8Ew%96
2010-02-11 12:19:21 -08:00
Jim Mathies
1d812b5785 Bug 538918 - Fix for bug 545338, don't drop into WaitForNotify() when spin loop unwinds. r=bent.
--HG--
extra : transplant_source : %CA%8B%E6%0B%3E%FC%AEK%B2PH%D5l%BEh%D4oj%E2Y
2010-02-11 14:03:24 -06:00
Jim Mathies
efadb86d27 Bug 538918 - Move Init() above mutex unlock - attempted test hang fix.
--HG--
extra : transplant_source : W%0D%05%B8%D64%E7%16%3A%DFf%9B%F7%89%AA%27%C4%D3%7C%AA
2010-02-11 11:25:39 -06:00
Jim Mathies
f3a7ada6f1 Bug 538918 - Don't delete gNeuteredWindows until the stack unwinds.
--HG--
extra : transplant_source : %9E%F8G%92P%1D%3D%1E%3B%BDYZ%E0%E8%C8%0ET%1C4p
2010-02-10 22:51:05 -06:00
Jim Mathies
84a1f73a57 Bug 538918 - Don't test the stack depth on entering WaitForNotify(). r=cjones.
--HG--
extra : transplant_source : %5D%07%E1%C6Q%F4%E0%DE%BD%89%BDb%EE%8FSo%06l-%1B
2010-02-10 20:30:21 -06:00
Benjamin Smedberg
92dda878db Followup to bug 538918 - Don't leak gNeuteredWindows, r=jimm
--HG--
extra : transplant_source : %1D%9C%3Eg%A2%ACV%3DY%F3%92%C8b%BDxB%3A.e%A7
2010-02-10 17:18:19 -05:00
Chris Jones
043d4799c5 Bug 545338: Make the IPC hang detector tolerate spurious wake-ups. Possibly temporary. irc-r=jimm
--HG--
extra : transplant_source : E%DC%C1%E1%0Dv%E1%F4%1DN0%AD%95b%AA%EFXi%F9%1F
2010-02-10 15:41:44 -06:00
Jim Mathies
c7f9adb923 Bug 538918 - follow up patch: IsMessagePending should use PeekMessage, not the stacks for detection.
--HG--
extra : transplant_source : %3D%E4_%CE7m%FE%8F%B0S%DC%9F%FAF%D7%40%5D%83%C1/
2010-02-09 22:47:44 -06:00
Ben Turner
abe12e49d0 Bustage fix
--HG--
extra : transplant_source : %C9%C5%A7%A1%24%E55%A5%3DBj%F4%90%B8%A0%FD%8F%E6%B0%B9
2010-02-09 16:12:41 -08: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
Chris Jones
d9acb93873 Fix linux bustage.
--HG--
extra : transplant_source : %FE%8B%BA%B1o%011%9A%CD5%2B%FC%CC%5B%A0%9EY%9F%C4%0F
2010-02-09 17:04:06 -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
3027574ad1 Follow-up to bug 540886: address review comments I forgot to before pushing.
--HG--
extra : transplant_source : a%25%DF%90g%8A%F0%5C%F7%9B%BEtX%13p9%3Fq%E8%E2
2010-01-27 02:17:17 -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
5b711f24bf Bug 540886, part 1: Refactor "special message" dispatch in AsyncChannel. r=bent
--HG--
extra : transplant_source : %81%F6%01%EB%0CE%B0%04R%02%A8%0B%F8c%EF/%1D%CC%3Ep
2010-01-27 00:41:31 -06:00
Chris Jones
66b2acb772 Bug 540111, part 1: Add a new IProtocolManager::RemoveManagee interface to break reliance on the |Manager()| interface. r=bent
--HG--
extra : transplant_source : %D8%135V%07%DD%9C%40%D9y%01%12%07%E1%BA%20%CFE%256
2010-01-26 22:56:09 -06:00
Benjamin Smedberg
12c1cd2d24 Commit remaining piece of bug 543788, r=jimm 2010-02-11 15:50:32 -05:00
Benjamin Smedberg
6e0f17ed7c Bug 544361 - Silverlight 3 doesn't work since XPCOM was removed from plugin processes, it needs CoInitialize, r=cjones 2010-02-04 15:00:00 -06:00
Benjamin Smedberg
30bd4e4e51 Bug 516515 - Don't initialize XPCOM in plugin processes, r=cjones
--HG--
extra : rebase_source : cab356b862a66fb7f5955b1f936944f2395bba3c
2010-02-03 17:17:09 -05:00
Ben Turner
e949113d77 Bug 542821 - 'Process startup event gets dropped on the floor by deferred messaging'. r=jimm.
--HG--
extra : transplant_source : %3A%2B%5E%7C%F6l%5D%5E6%C1%992%B9%2AA1%83%9A%E4%D5
2010-02-03 13:09:55 -08:00
Ben Turner
fe949c04d2 Bug 542617 - 'Deferred message loop mishandles WM_NCCALCSIZE'. r=jimm.
--HG--
extra : transplant_source : o%DD%22%21%91%F6%14%1D%C0H%BFsu%12%12%06%0B%81JM
2010-01-28 10:03:37 -08:00
Chris Jones
ec0791fe20 Bug 542052: Add support for serializing/deserializing byte types. r=bent 2010-01-25 16:47:39 -06:00
Benjamin Smedberg
9c1e8d42c6 Bug 540967 - "missing output line for total leaks" because the parent process isn't waiting for the child process to clean up/write leak logs, r=cjones
--HG--
extra : transplant_source : EW%5C-%60M%BCabd%A0%DE%F8%1EG%DF%03%14%B3%24
2010-01-22 10:21:33 -05:00
Benjamin Smedberg
8adba8c2a2 Bug 540868 part 2: keep all NPObjects (not just those with actors) in mObjectMap, and invalidate/deallocate them when we destroy the associated instance, r=bent
--HG--
extra : transplant_source : %96H%CA%BF%2BX%18s%C8%1B%2Bh%8F%92%05%F0%9F/N%01
2010-01-22 10:06:13 -05: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
bcc3aca59d Bug 521929, part 1: Add a "seqno" field to synchronous messages. r=bent
--HG--
extra : transplant_source : %D0%5D%CF%0DUv%AC%AD%09%F98%C4%14%E2%F8%14%2CUZ%97
2010-01-21 20:04:09 -06:00
Chris Jones
b15d1dec18 Bug 538239: Guard against async messages unblocking sync message waits. r=bent
--HG--
extra : transplant_source : .%3E%14%26%12%B1%80%BC%60%5D%E5%27%DE%11%C6uRY%F36
2010-01-20 21:50:36 -06:00
Ben Turner
06e68d5929 Bug 539061 - 'OOPP: ASSERTION: Received "nonqueued" message 31, 10'. r=jimm. 2010-01-15 12:35:53 -08:00
Chris Jones
b121097b42 Bug 539295: Use lenient child reaping in NS_BUILD_REFCNT_LOGGING builds. r=bsmedberg
--HG--
extra : transplant_source : %FE%1B%07%A0%E4G%A2%F9%90%1Dc8J%3FP%E7%0A%DDL%05
2010-01-13 14:57:52 -06:00
Benjamin Smedberg
0807858aa2 Followup to bug 516759 (multi-process crash reporting), make childCrashNotificationPipe a leaked char* instead of a leaked nsString, so that it doesn't show up in leakstats. r=ted (Filed bug 539451 as a followup.)
--HG--
extra : rebase_source : e143e12ea5babc78fd95bf799aff2920e1915481
2010-01-13 10:44:10 -05:00
Chris Jones
e8012b2b92 Bug 516759: Use OOP crash reporting in Gecko. r=luser
--HG--
extra : rebase_source : 1949d23a5ce0c15c266d9e67e6a6be7d650a51df
2010-01-12 15:14:38 -06:00
Chris Jones
cb033bc042 Small edit to comment. No r=, just want another set of talos runs.
--HG--
extra : rebase_source : 1316e80d35d9640b249be2f0d393c5a76dd7bd87
2010-01-12 02:25:18 -06:00
Chris Jones
e987efa9d9 Bug 538586: Notify clients of channel errors if they call Close() before deleting themselves, but before the error notification event is delivered from the IO thread. r=bent
--HG--
extra : rebase_source : b363f3ab257e3aac3801c09e26ca2d9bf6cc3353
2010-01-12 00:14:32 -06:00
Chris Jones
8ff8aeed5a bug 535867: fix threadsafety problem causing windows tinderbox error. r=trivial 2009-12-18 18:09:56 -06:00
Benjamin Smedberg
01268329e1 Bug 535298: Cancel the NotifyMaybeChannelError event if the AsyncChannel is destroyed, and allow AsyncChannel::Close() to be called after a channel error (e.g. child process crash). r=cjones 2009-12-17 18:12:03 -06:00
Chris Jones
92ab770bfe bug 533587: process RPC in-calls deferred because of races until "later". in-person r=bent 2009-12-09 17:15:01 -06:00
Chris Jones
7a70d6f9c4 bug 533034: fix race condition that led to use-after-free. thanks valgrind! 2009-12-07 00:04:00 -06:00
Chris Jones
6e91459a40 bug 532983: fix invalid memory reads caused by regressions in shutdown behavior. r=bsmedberg 2009-12-07 00:03:49 -06:00
Chris Jones
0b9d5b4132 Fix MSVC warning 2009-12-04 16:27:59 -06:00
Chris Jones
ef2a387ab8 bug 523175: follow-up to 82549dbf71d8, fully enables the C++/IPDL side of Shmem and adds unit tests. r=bent 2009-12-04 12:45:21 -06:00
Chris Jones
96d13f9099 bug 523174: add a higher-level Shmem class that implements exclusive access rights between parent/child actors and does over/underflow checking. (Also adds a stop-gap lower-level SharedMemory class in lieu of bug 523172.) r=joedrew 2009-12-04 12:45:15 -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
Chris Jones
2898ebbb12 bug 525172: from IPDL specs generate .cpp files with method definitions instead of everything in .h files. r=bsmedberg 2009-12-03 02:16:09 -06:00
Chris Jones
5a85bd72bf bug 525483: simple check for IPDL actor use-after-free. also refactors some error handling code 2009-12-03 02:16:03 -06:00
Ben Turner
43fec0c5cf Add WM_MOUSEACTIVATE to list of deferred messages 2009-12-02 18:51:29 -08:00
Ben Turner
4c2c017389 Add WM_CAPTURECHANGED to the list of delayed messages. 2009-12-01 15:09:33 -08:00
Ben Turner
fe230a0d56 Fix PostDelayedTask in the message loop 2009-11-23 16:01:12 -05:00
Benjamin Smedberg
593c06cd8c Do full shutdown, instead of _exit(0) shutdown in the plugin process when we're doing leak checking. 2009-11-20 13:49:15 -05:00
Chris Jones
27e7412d40 bug 529234: make sure to cleanup child processes 2009-11-19 13:03:30 -06:00
Ben Turner
fcac19872d Bug 526361 - 'Defer nonqueued messages received during synchronous IPC calls'. r=jimm+rs. 2009-11-18 15:18:08 -08:00
Josh Matthews
2414bcabb4 Bug 517963 - New-tab opening should not launch the content process synchronously r=cjones 2009-11-18 16:43:53 -05:00
Ben Turner
b579e4a306 Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-17 15:34:48 -08:00
Ben Turner
6a8386c605 Fix bustage 2009-11-12 14:46:29 -08:00
Ben Turner
cafe07f11b Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Chris Jones
0807e5c7e2 bug 527871: fix shutdown assertion and leaking TestShellParent. still leaking ContentProcessParent's GeckoChildProcess, but needs discussion before fixing 2009-11-11 02:34:08 -06:00
Phineas T. Farnsworth
c1f7d557dc bug 526626: band-aids for shutdown assertions 2009-11-09 16:56:55 -06:00
Ben Turner
b7ad07e8c6 Bustage fix 2009-11-06 16:22:54 -08:00
Chris Jones
f0b32f7472 fix linux build 2009-11-06 17:51:04 -06:00
Ben Turner
d1a97dd911 Bug 522414 - 'RPC and Sync channels will deadlock easily on Windows'. r=jimm+rs. 2009-11-06 14:33:12 -08:00
Chris Jones
5ba83387ef bug 526990: add support for serializing |float|s. no r=, trivial 2009-11-06 14:24:35 -06:00
Chris Jones
721479dcd3 bug 523894: wstrings are bad news in OPT builds due to chromium/Mozilla -fshort-wchar mismatch 2009-11-05 18:24:27 -06:00
Chris Jones
f1358e3105 bug 525792: fix leaking PluginModules, call NP_Shutdown() on plugins. minor, no r= 2009-11-03 15:37:07 -06:00
Chris Jones
0b6a5999de attempt to fix build 2009-10-29 12:50:28 -05:00
Chris Jones
6f92260e03 build fix 2009-10-27 22:31:04 -05:00
Chris Jones
4f942a96f2 bug 523761: give top-level IPDL actors handles to each others' processes. r=bent 2009-10-27 16:52:37 -05:00
Chris Jones
963eacd704 bug 524767: add better error logging to *Channel. no r?, logging only 2009-10-27 16:32:55 -05:00
Chris Jones
8cb71b94bf bug 518914: make sure that Messages are fully deserialized. fix fencepost error in chromium code 2009-10-19 16:06:13 -05:00
Chris Jones
373c019990 bug 521324: call the multi-threaded GLib initialization function. r=karlt 2009-10-19 11:28:42 -05:00
Chris Jones
a0897fc29d bug 521845: expand protocol space by 4x (temporarily) 2009-10-12 14:04:40 -05: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
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
Chris Jones
8ef0c1d0d8 bug 516798: fix busted actor-as-return-value handling in IPDL 2009-09-16 21:49:41 -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
Ben Turner
c8cd3d9e05 Fix nsTArray deserialization 2009-09-14 12:58:33 -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
Ben Turner
0f1d5c36a0 Force child processes to close and wait for them on shutdown 2009-09-02 17:18:27 -07:00
Ben Turner
a8e29d16e8 Basic xpcshell test for testing IPDL 2009-09-01 15:17:24 -07:00
Chris Jones
7ede298e42 bug 513920: synchronously "connect" to parent process from child process 2009-09-01 11:27:09 -05:00
Ben Turner
7821c5b1ba Rework chromium initialization, r=beast 2009-08-28 12:46:21 -07:00
Ben Turner
7c25b1ea27 Backing out stuff that doesn't work 2009-08-27 16:05:38 -07:00
Ben Turner
5b7e1a569b Fix build bustage? 2009-08-27 15:54:05 -07:00
Ben Turner
e4dd7bb6ff Rework chromium initialization, revert accidental change 2009-08-27 14:17:01 -07:00
Ben Turner
8e88b405d2 Rework chromium initialization 2009-08-27 14:11:10 -07:00
Ben Turner
1521c7b109 Fix testshell to use the new callback commands, and shut down properly 2009-08-25 16:07:22 -07:00
Robin Bate Beorop
b7c4e982b3 Bug 507218 - Expose the process type (chrome/content) to client code via XRE_GetProcessType and nsIXULRuntime, r=bent 2009-08-19 13:09:51 -04: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
Benjamin Smedberg
3727beac48 Bug 510025 - make TestShell a subprotocol of ContentProcess so that it is useful for prototyping 2009-08-12 14:31:48 -04: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
Ben Turner
2f24daa576 Add test plugin for ipc, make sure it works 2009-08-05 15:36:33 -07:00
Ben Turner
d4bb2883d3 Use mozilla strings instead of std::string in IPDL 2009-07-29 14:12:15 -07:00
Chris Jones
9d6b44828f Bug 506075: eliminate handshaking async constructor protocol, use smarter routing ID assignment 2009-07-24 18:24:27 -05:00
Ben Turner
018b1a724f Allow ipcshell to receive a response from its child process 2009-07-23 15:27:17 -07:00
Chris Jones
cc9c58dbcb add SyncLaunch() method to GeckoChildProcess class. remove much newly obseleted code. 2009-07-20 13:14:41 -05:00
Chris Jones
8959227f99 implement protocol manager support for all channel types, not just RPC 2009-07-20 11:59:51 -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
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
1de39e3ef4 update rgnrectallocator changes to match pending m-c patch. 2009-07-14 03:09:23 -05:00
Chris Jones
14b0696047 fix up phase 1 browser: (i) suppress spurious RgnRectAlloc error msgs; (ii) make IFrameEmbedding protocol sync/async instead of rpc; (iii) fix bug that prevented child iframe from drawing 2009-07-14 02:33:50 -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
Benjamin Smedberg
28d4675b23 Build system for .ipdl files. 2009-07-13 12:14:56 -04:00
Ben Turner
011769cbf2 Adds the ipcshell application to test IPC 2009-07-11 02:33:10 -04:00
Chris Jones
e6c73d1542 use a single binary, mozilla-runtime, for all child processes 2009-07-10 14:03:09 -05:00
Benjamin Smedberg
0990ded365 Goodbye, NO_NSPR_10 weirdness. 2009-07-07 12:25:00 -04:00
Chris Jones
00958eff01 port IFrame protocol to new interface. fix small IPDL bug. 2009-07-02 19:24:02 -05:00
Ben Turner
73f03dff53 merge bent's changes from libchromiumipc. Gtk plugins now drawing 2009-07-01 14:19:32 -07:00
Chris Jones
8aa21b1e90 merge plugin work from libchromiumipc. add env var check for OOP iframe. a few small bugfixes here and there. 2009-07-02 11:54:22 -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
34f5d65570 Hook up the event loop changes and fix the build
--HG--
rename : ipc/chromium/src/base/file_version_info_linux.h.version => ipc/chromium/base/file_version_info_linux.h
2009-06-30 12:02:37 -04: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
Benjamin Smedberg
8a1fac05ad Bug 561817 part A: Entered/ExitedCall callbacks for toplevel actors upon RPC in-calls. r=bsmedberg 2010-04-29 11:49:00 -05:00