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

494 Коммитов

Автор SHA1 Сообщение Дата
Chris Jones 635b352381 Bug 540111, part 3: Allow IPDL actors to be managed by one of a set of possible managers. r=bent
--HG--
extra : transplant_source : %DE%1A%20%E5%21%F8%A0.%A2%3A%B1%B8A%BEi%8A%85%0C%3C%60
2010-01-26 22:56:12 -06:00
Chris Jones e031e35e5a Bug 540111, part 2: Subsume direct calls to manager->Dealloc*() into RemoveManagee(). r=bent
--HG--
extra : transplant_source : %FF%FC%CA%FD%82%7F%C2%CC%E4%0Ca%85%C4a%CB%CCM%CE%06%83
2010-01-26 22:56:11 -06:00
Chris Jones d6e94a4945 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 15452c3d4a Commit remaining piece of bug 543788, r=jimm 2010-02-11 15:50:32 -05:00
Benjamin Smedberg 0d31f86d1b 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 32cca8830e 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 e8326cc3a2 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
Oleg Romashin 559c0b1090 Bug 534644 - e10s: implement Qt ipc/chromium backend, part 2. r=benjamin. 2010-01-29 08:50:44 +02:00
Ben Turner 505478377e 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
Oleg Romashin 44618a6827 Bug 534644 - implement Qt ipc/chromium backend, first part. r=benjamin, r=jones.chris.g 2010-01-28 07:22:41 +02:00
Benjamin Smedberg 59e8358f95 Bustage fixup from bad merge of bug 535564 2010-01-27 12:18:36 -05:00
Chris Jones 406bea1c4e IPC socketpair()s should be CLOEXEC (dup2() unsets the flag for the new fd in the child process). irc-r=bsmedberg
--HG--
extra : rebase_source : 5946587beff45a6a0afa61469f7ba0288521bcc5
2010-01-26 18:13:43 -06:00
Benjamin Smedberg b427385bb6 Bug 535564 part 2: only open the PID for short periods while we're writing to it, r=jgriffin
--HG--
extra : rebase_source : 65604f973cc0ea70fc6b61273b8931a0c519c354
2010-01-27 11:17:22 -05:00
Chris Jones 726529fe85 Followup to bug 542052: Windows doesn't like stdint types. 2010-01-25 17:18:11 -06:00
Chris Jones f2340111bc Bug 542052: Add support for serializing/deserializing byte types. r=bent 2010-01-25 16:47:39 -06:00
Benjamin Smedberg b059b3ea2b 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 3c10d3a700 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 6cad7c551d Bug 521929, part 3: IPDL/C++ test.
--HG--
extra : transplant_source : %9E%82%3E%20E%81J%97r%CD%05%93%FC%E0%9C%877P%DF%EE
2010-01-21 20:04:11 -06:00
Chris Jones c2b605f46a 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 c0c1664063 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 d5a299b199 Fix Windows build busted by 2e3e142612b1.
--HG--
extra : transplant_source : -z%FD%996%7D%89%BD%09%E8%E2L%23%0E%1CK%21%AC%28%1C
2010-01-20 22:58:47 -06:00
Chris Jones 949aa34f1a 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
Chris Jones a54b659d48 Test for bug 538239.
--HG--
extra : transplant_source : 8e%9E%87%3F%D1%EE%A7%3A%AB%19%84%AD%C1%DD%13%CE%82%E3w
2010-01-20 21:50:07 -06:00
Chris Jones 3980439f14 bug 539552 - Add a GetMinidump() method to top-level, parent-side IPDL classes. r=bent
--HG--
extra : transplant_source : i%EF%D7%5Ep%CA%B1%40%40%0C%F6%B0%21%D6G%B5%A6%8C%1B%93
2010-01-13 20:17:00 -05:00
Chris Jones 09b6b251bb Followup to bug 539856: Save actors' IDs in all message handlers to avoid use-after-free when the actor is deleted above the handler in the stack. IRC r=bent
--HG--
extra : transplant_source : %BF%A5%80%B1%A0%E0%8FcZ%9D%02%84%FC%9F%E5%A1R%91n%BD
2010-01-15 15:15:52 -06:00
Chris Jones 01198c0013 Test for followup to bug 539856.
--HG--
extra : transplant_source : f%83f%28%DC%A9%09%ADm%C3Ra%C5%D4%A7%A5%B2%D8%EDb
2010-01-15 15:15:51 -06:00
Chris Jones c1e3e74ead Bug 539343: Call DeallocSubtree() on subprotocol actors after being __delete__-ed. r=bent
--HG--
extra : transplant_source : d%BE5%28%8D%EE%E3%D2Q%14%FB8%8Co%D5U%2C%19W%C4
2010-01-13 21:08:36 -06:00
Chris Jones ea9b688256 Test for bug 539343.
--HG--
extra : transplant_source : J0p%C1%D3%7F%A5%D5%7Ds%F3%3F%8EG%B4%DD%D5%2A_%B2
2010-01-13 21:08:35 -06:00
Ben Turner f146c8a479 Bug 539061 - 'OOPP: ASSERTION: Received "nonqueued" message 31, 10'. r=jimm. 2010-01-15 12:35:53 -08:00
Chris Jones a5ffd09a63 Bug 539856: Avoid use-after-free of |mId| when constructing replies to destructor messages by saving |mId| on the stack. no r=, minor
--HG--
extra : transplant_source : %A5V%D3%C6%8D%87%BF%1B%F7%90%FB%88%81l%8Cu%D2ga%7F
2010-01-14 23:25:57 -06:00
Chris Jones 1052c22a4c Test for bug 539856.
--HG--
extra : transplant_source : %20%83%FE%ED1N%00Xg6D%A9%FC%1E%B1%7E%BD%14xQ
2010-01-14 23:25:56 -06:00
Chris Jones 786ca38668 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
Chris Jones c384f8a406 Bug 539295: Add an extra EnsureProcessTerminated() parameter to control how lenient to be wrt child shutdown. r=bent
--HG--
extra : transplant_source : E%D9%F1%AE%DA%A6%FF%96%81F%FB%0F%92v%A3%27%8CE%D5%25
2010-01-13 14:57:51 -06:00
Benjamin Smedberg 6760e001c8 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 392961a7d7 Bustage fix: work around XRE hackery.
--HG--
extra : rebase_source : 369e571b7e2dcd78bb6d1cd4c0aa470f43b623bf
2010-01-12 17:42:58 -06:00
Chris Jones b866163542 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 876686b842 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 2ce053f220 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 6a9dc3595e Test for bug 538586.
--HG--
extra : rebase_source : 806feb88f71efe10512b084156b88534bc6236bf
2010-01-12 00:14:31 -06:00
Chris Jones 287601902b Don't run TestLatency if the timing resolution is too low and use the new TimeDuration::ToSecondsSigDigits() method to display durations to humans. No r=, test only.
--HG--
extra : rebase_source : 34ee3b04c128da20d035cb6e4d92418f5870cccd
2010-01-11 23:46:17 -06:00
Jim Mathies 11ed886448 Bug 538990 - Add a resource manifest to mozilla-runtime.exe. r=ted. 2010-01-13 19:44:34 -06:00
Chris Jones 95623c8719 bug 535867: fix threadsafety problem causing windows tinderbox error. r=trivial 2009-12-18 18:09:56 -06:00
Benjamin Smedberg b47d4a493d 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 2da4b486cf bug 535298: IPDL unit test for use-after-free crashes after RPC errors. r=test-only 2009-12-17 18:12:01 -06:00
Benjamin Smedberg e39c5b277f Bug 534736, and perhaps some others: parent crash within mozilla::plugins::PPluginInstanceParent::DestroySubtree, r=cjones 2009-12-17 16:39:22 -05:00
Makoto Kato e4dcea27bb Bug 534813 - ipc_message_utils.h causes build error on Windows x64 build. r=jones.chris.g 2009-12-21 18:28:28 +09:00
Benjamin Smedberg dd182d8a50 Merge only plugin changes from e10s to mozilla-central. 2009-12-16 09:19:07 -05:00
Benjamin Smedberg ee63070241 Electrolysis-plugin-only bookkeeping commit. 2009-12-15 20:33:05 -05:00
Chris Jones 61a1110dac fix syntax error. r=trivial 2009-12-15 16:15:39 -06:00
Chris Jones 3ab5913e7d bug 533507: improve IPC "race condition" error message. frontend only, r=me 2009-12-09 20:01:46 -06:00
Chris Jones 4789db9117 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 4c6f62b0e8 add missing makefile dep. r=trivial 2009-12-09 14:53:52 -06:00
Chris Jones efeb847d3c bug 532973: add a check-valgrind target that runs IPDL unit tests under valgrind. r=luser 2009-12-07 01:10:52 -06:00
Chris Jones 8947a6d799 bug 533034: fix race condition that led to use-after-free. thanks valgrind! 2009-12-07 00:04:00 -06:00
Chris Jones 00b8eeb384 bug 532983: fix invalid memory reads caused by regressions in shutdown behavior. r=bsmedberg 2009-12-07 00:03:49 -06:00
Chris Jones eae0a4d1cb fix some leaks found by valgrind. r=trivial 2009-12-04 18:15:44 -06:00
Chris Jones fc2adfc593 bug 521949: make valgrind stop complaining about a false-positive uninitialized memory read 2009-12-04 16:45:23 -06:00
Chris Jones af05884ad7 Fix MSVC warning 2009-12-04 16:27:59 -06:00
Chris Jones 1c25f716be 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 e17f4a3fa8 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
Benjamin Smedberg 886a4835ae Bug 532659 - PluginScriptableObjectParent gets double-deleted when the plugin crashes, and fix the IPDL bug where we `delete` the actor if construction fails, instead of calling Deallocate on it, r=bent
--HG--
extra : rebase_source : dbe9a100735b1e0d0a8b07f4421e1ccb6055a78a
2009-12-03 15:30:05 -05:00
Chris Jones 588f9c3710 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 9180a48f88 bug 521272: add C++ interfaces allowing IPDL manager actors to iterate over managees. r=trivial 2009-12-03 02:16:21 -06:00
Chris Jones dfa19ba299 bug 525342: make IPDL dtors part of the destructed actor's protocol instead of the manager's. r=bsmedberg 2009-12-03 02:16:14 -06:00
Chris Jones adf54bbb48 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 2bad53b3cd bug 525483: simple check for IPDL actor use-after-free. also refactors some error handling code 2009-12-03 02:16:03 -06:00
Chris Jones f8e4f3e6a0 bug 524220: add a |nullable| type qualifier denoting whether C++ actor params are allowed to be NULL. r=bent 2009-12-03 00:35:22 -06:00
Chris Jones dacad4ef6f bug 523175: preliminary front-end-only support for shmem. r=bent 2009-12-03 00:35:15 -06:00
Chris Jones fd9beb4c8f bug 532333: part 2: implement an alternate EnsureChildTerminated() that listens for SIGCHLD (with a timeout) on the IO thread, instead of spawning a cleanup thread 2009-12-02 21:09:47 -06:00
Chris Jones b27946bfce bug 532333: part 1: expose libevent signal events through chromium wrappers 2009-12-02 21:09:24 -06:00
Ben Turner b63465ed03 Add WM_MOUSEACTIVATE to list of deferred messages 2009-12-02 18:51:29 -08:00
Ben Turner c16a5303f4 Add WM_CAPTURECHANGED to the list of delayed messages. 2009-12-01 15:09:33 -08:00
Ben Turner a15731e7c4 Bug 531821 - Add chromium LICENSE file. 2009-12-01 14:18:27 -08:00
Benjamin Smedberg fb68e68eef Bug 528367 - generate ipdl_{lex,yacc}tab.py in the objdir, not the srcdir 2009-11-24 10:34:38 -05:00
Ben Turner 171c2fd7f1 Fix PostDelayedTask in the message loop 2009-11-23 16:01:12 -05:00
Benjamin Smedberg 63a8ed4e8c 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 613caf15b6 include some headers missing in newer gcc/libc builds. r=trivial 2009-11-19 20:08:39 -06:00
Benjamin Smedberg fe8a111429 Followup to bug 525090 - log new processes to a file based on the environment, instead of unconditionally to stdout, r=cjones 2009-11-19 14:52:11 -05:00
Chris Jones 33303b63b6 bug 529234: make sure to cleanup child processes 2009-11-19 13:03:30 -06:00
Ben Turner b5d855e192 Bug 526361 - 'Defer nonqueued messages received during synchronous IPC calls'. r=jimm+rs. 2009-11-18 15:18:08 -08:00
Josh Matthews 43b575fc59 Bug 517963 - New-tab opening should not launch the content process synchronously r=cjones 2009-11-18 16:43:53 -05:00
Ben Turner 78b9279493 Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-17 15:34:48 -08:00
Chris Jones 81aee18adc add nsresult to IPDL builtins 2009-11-16 14:52:47 -06:00
Ben Turner 0f71f9d8ab Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-13 15:35:33 -08:00
Ben Turner f5e0292853 Fix bustage 2009-11-12 14:46:29 -08:00
Chris Jones c586829aab no need to include in C++ protocol-common headers |include protocol|'d from IPDL. this is an accident of history 2009-11-12 16:20:20 -06:00
Ben Turner ea90e1d517 Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Chris Jones ca56f4c662 fix misplaced forward declarations of protocols 2009-11-11 15:07:58 -06:00
Chris Jones a6eb9f951d 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
Chris Jones dc4ccf2a1a mac builds and runs with --enable-ipc, but the subprocess nsAppShell dies for an apparently Cocoa-related reason. IPC is fine though 2009-11-10 20:25:10 -06:00
Chris Jones 11b99f8158 print actor names instead of protocol, regression 2009-11-10 18:02:44 -06:00
Chris Jones 5c78b2aacc the protocol-tree-walk to determine friends was broken 2009-11-10 16:50:59 -06:00
Phineas T. Farnsworth 3ecf49ffd9 bug 526626: band-aids for shutdown assertions 2009-11-09 16:56:55 -06:00
Benjamin Smedberg 48afceff5b Followup to last patch: using the ternary operator doesn't shortcut creating the temporary object, and I can't figure out why it was a ternary anyway: make it an if. 2009-11-09 12:57:32 -05:00
Benjamin Smedberg 8cf4b74f82 Fix the chromium logging stuff: make CHECK/LOG release-and-debug (DCHECK/DLOG are debug-only), and make it print warning/error/abort using NS_DebugBreak, which is especially important for release aborts. 2009-11-09 12:03:48 -05:00
Chris Jones 7abc5ef481 build fix for gcc <= 4.2 2009-11-06 22:57:13 -06:00
Ben Turner 6b709d5c83 Bustage fix 2009-11-06 16:22:54 -08:00
Chris Jones 1d09b42dfa fix linux build 2009-11-06 17:51:04 -06:00
Chris Jones cdaad28691 fix build bustage and test SEGFAULTs 2009-11-06 17:07:52 -06:00
Ben Turner 371897fda8 Bug 522414 - 'RPC and Sync channels will deadlock easily on Windows'. r=jimm+rs. 2009-11-06 14:33:12 -08:00
Chris Jones ff3cdb9dd0 bug 526990: add support for serializing |float|s. no r=, trivial 2009-11-06 14:24:35 -06:00
Benjamin Smedberg e5123e76b3 Followup to the previous patch: give arguments to CHECK also, to fix Maemo build bustage and be consistent. 2009-11-06 14:45:38 -05:00
Benjamin Smedberg b7a7a6d21d Bug 526868 - Drop the dependency on GLIBCXX_3.4.9 by hacking Chromium logging to use NSPR logging instead of ostream. Pending r+ from cjones, but I wanted to get this landed to see what it did to the Linux testerboxes. 2009-11-05 17:47:09 -05:00
Chris Jones 0555b3b979 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 351a5a7e27 bug 525677: shuffle some headers to appease gcc 4.2. IRC r=fred23,bsmedberg 2009-11-04 23:11:33 -06:00
Benjamin Smedberg 3d91b3ad6a Update chromium code to newer versions (rev 23304) to avoid tr1/function which doesn't compile without RTTI on, and disable RTTI by default. 2009-11-04 15:46:27 -05:00
Chris Jones ad5f656675 bug 526397: fix up command line init. no r=, minor 2009-11-03 23:12:18 -06:00
Chris Jones dfe557b425 bug 525792: fix leaking PluginModules, call NP_Shutdown() on plugins. minor, no r= 2009-11-03 15:37:07 -06:00
Jonathan Griffin 33404e88ca Bug 525090. Log the PID's of launched processes. r=cjones
--HG--
extra : rebase_source : 69365c5d2f3a96b21efdeea876389027fca6feb5
2009-11-02 14:41:46 -08:00
Chris Jones 98aac01cde don't allow TestLatency to run when MOZ_IPC_MESSAGE_LOG is set 2009-10-30 16:04:06 -05:00
Chris Jones 5f115af3bd attempt to fix build 2009-10-29 12:50:28 -05:00
Chris Jones 05a805ccc2 bug 525150: bring back MOZ_IPC_MESSAGE_LOG. no r=, logging code only 2009-10-29 10:46:42 -05:00
Chris Jones 9843571a6c bug 525169: remove superfluous test-harness. no r=, removing testing code only 2009-10-29 00:56:24 -05:00
Chris Jones 89f79268f0 build fix 2009-10-27 22:31:04 -05:00
Chris Jones 24ec1aa919 bug 523761: give top-level IPDL actors handles to each others' processes. r=bent 2009-10-27 16:52:37 -05:00
Chris Jones 637d1e450b bug 524767: add better error logging to *Channel. no r?, logging only 2009-10-27 16:32:55 -05:00
Ben Turner 97a09ee2c7 Don't let people get the order of includes wrong in this horrifying patchwork of chromium and mozilla types 2009-10-21 16:01:16 -07:00
Chris Jones 27e91c4d03 fix bug where EndRead() is called on an empty (unread) message 2009-10-21 14:48:49 -05:00
Chris Jones f72539f841 bug 523272: allow protocols to reference great*grandchild actors 2009-10-19 21:12:25 -05:00
Chris Jones 4a5d5780c1 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 5207440a2e bug 523143: switch protocols using nsTArray to native IPDL arrays 2009-10-19 14:10:52 -05:00
Chris Jones cf6e6c5c18 bug 521324: call the multi-threaded GLib initialization function. r=karlt 2009-10-19 11:28:42 -05:00
Chris Jones b6aff83bd0 pre-emptive windows build fix. no hablas STDint 2009-10-16 19:33:19 -05:00
Chris Jones 36a356411a bug 506171: rewrite lower.py and add native IPDL arrays. 2009-10-16 18:31:53 -05:00
Chris Jones c0129fa14f temporarily un-apply some lower.py fixes that have been subsumed by bug 506171 2009-10-16 18:27:43 -05:00
Chris Jones ca1a620edf fix bugs that were preventing IPDL C++ unit tests from running on win32 2009-10-13 23:08:24 -05:00
Chris Jones 1362779adb add basic IPC latency tests 2009-10-13 17:36:28 -05:00
Chris Jones 0bdcfebbdd bug 521845: expand protocol space by 4x (temporarily) 2009-10-12 14:04:40 -05:00
Chris Jones 3178fb7f58 fix bugs in RPC race resolution 2009-10-09 01:21:39 -05:00
Chris Jones 401dbb86c1 hack around lack of C99 format specifiers on Windows 2009-10-08 18:07:24 -05:00
Chris Jones 69f1d9472a 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 a1bf0da8f0 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 488a82db2b Add threadsafety assertions to plugin code 2009-10-08 12:11:13 -07:00
Ben Turner 4b3878c7d3 Two tiny IPDL fixes. 2009-10-07 16:52:41 -07:00
Chris Jones 3eeb976774 bug 518425: C++ unit test for bug 2009-10-06 13:05:47 -05:00
Chris Jones 8053393d5c bug 518126, part 2: add infrastructure for C++ tests of IPDL-generated code. r=ted,bsmedberg 2009-10-06 13:02:26 -05:00
Ben Turner 74aef75a46 More bustage fix 2009-10-05 18:43:46 -07:00
Chris Jones c8423046ad bug 518425, part 2: lessen routing ID collisions 2009-09-24 13:38:04 -05:00
Chris Jones 952b4776bc bug 518126: part 1 --- test the IPDL compiler in isolation. r=bsmedberg 2009-09-23 11:00:37 -05:00
Chris Jones 234f57eaf0 bug 517977: require actor impls to override AllocPFoo/DeallocPFoo instead of PFooConstructor/PFooDestructor 2009-09-22 12:31:11 -05:00
Chris Jones 4b3bdb7266 bug 518032: fix messed-up dtor code gen 2009-09-22 11:03:54 -05:00
Chris Jones daaa16efb8 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 acea15b10b 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 ed79e2b7aa fix lingering cruft from the nsresult-to-bool conversion 2009-09-18 16:35:53 -05:00
Chris Jones a98c33cdc3 make actor param/return types nullable. use decl initializers where possible for more concise code 2009-09-18 12:28:37 -05:00
Chris Jones 3325aa1769 fix bug in IPDL race detector causing it not to detect certain patterns involving async messages where parent/child state machines could get more than 1 state out of sync 2009-09-18 11:10:48 -05:00
Chris Jones 40931515df switch message handler nsresult return types to bool. appears to break test plugin, will be temporary 2009-09-17 18:09:20 -05:00
Ben Turner 7a9116aea8 Landing the first part of NPRuntime support for plugin-side objects. Not hooked up yet. 2009-09-17 15:15:12 -07:00
Jason Duell 9a3a9ea726 Necko init patch, with modeline fixes 2009-08-18 12:05:15 -07:00
Chris Jones c19eaf95f9 bug 516798: fix busted actor-as-return-value handling in IPDL 2009-09-16 21:49:41 -05:00
Chris Jones 00393a2456 fix mismatched expectations of generated vars arrays 2009-09-16 17:41:04 -05:00
Ben Turner 2dc4373d72 Initialize managers asap in child actors 2009-09-16 15:01:00 -07:00
Ben Turner e92d4e68c3 Further fixes for unions 2009-09-14 19:26:17 -07:00
Ben Turner 01787830ed Fix union type stuff for linux too 2009-09-14 17:55:00 -07:00
Ben Turner 3030edf49d Fix union type constructors to be explicit to avoid msvc choosing cheaper code paths 2009-09-14 14:44:06 -07:00
Ben Turner a26c7c4b42 Fix mem corruption from our different use of ChildProcessHost when child processes crash 2009-09-14 13:02:32 -07:00
Ben Turner 6e60758ac5 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 70e97708ae Fix nsTArray deserialization 2009-09-14 12:58:33 -07:00
Chris Jones 8bd9f31a0e modify the generated C++ enum representing the constituent types of IPDL unions so that they can represent a "not assigned" state 2009-09-12 17:18:56 -05:00
Chris Jones 9933ff0ae5 fix the internal C++ union of generated IPDL unions so that they can contain non-POD types 2009-09-12 15:40:26 -05:00
Chris Jones e67749fd80 fix isUnion/isUnionType schizophrenia introduced by d3e90292fd30 2009-09-12 15:11:35 -05:00
Benjamin Smedberg 6c9c4d5578 Followup to changeset d3e90292fd30, discriminated union types: bustage fix when passing an actor 2009-09-11 12:05:26 -04:00
Chris Jones 7fdb44540e unblock RPC waiters for async messages, for realz 2009-09-11 02:28:09 -05:00
Chris Jones 45238cc4a4 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 dd1940dc7b add discriminated union types to IPDL 2009-09-10 23:55:03 -05:00
Chris Jones 9988d69938 make RPC unblock for async and sync, as it supposed to have 2009-09-10 18:54:37 -05:00
Ben Turner c9da13e27d Remove 'Protocol' suffix from IPDL-generated files 2009-09-09 15:59:06 -07:00
Ben Turner 761a7fffb6 Rename remaining protocols
--HG--
rename : dom/ipc/ContentProcess.ipdl => dom/ipc/PContentProcess.ipdl
rename : dom/ipc/IFrameEmbedding.ipdl => dom/ipc/PIFrameEmbedding.ipdl
rename : ipc/test-harness/Test.ipdl => ipc/test-harness/PTest.ipdl
rename : ipc/testshell/TestShell.ipdl => ipc/testshell/PTestShell.ipdl
rename : ipc/testshell/TestShellCommand.ipdl => ipc/testshell/PTestShellCommand.ipdl
2009-09-09 15:00:14 -07:00
Chris Jones 123af8fa57 bug 515365: fix actor types as message params. also refactor actor naming so that the "Protocol" suffix can be removed. 2009-09-09 15:25:05 -05:00
Chris Jones ec9d2c6dbc bug 515242: finish FE support for actor types specified to be in "any" state (by adding State.ANY). fix IPDL handling of carriage return, remove them from new code 2009-09-09 01:58:08 -05:00
Ben Turner 36101eae31 Fix crashing iframes due to gtk_init, stop using windows in xpcshell tests 2009-09-08 13:35:12 -07:00
Ben Turner 0077c0c8e8 Fix linux builds by giving them a better idea of the executable location 2009-09-04 00:23:06 -07:00
Chris Jones 9daef93c7b make failed exec() print a loud error message 2009-09-03 17:12:57 -05:00
Ben Turner 9be6ab9a0b Force child processes to close and wait for them on shutdown 2009-09-02 17:18:27 -07:00
Ben Turner 672525db17 Enable ipcshell tests 2009-09-02 12:35:15 -07:00
Ben Turner 285460bc18 Disable tests until they work 2009-09-01 15:36:38 -07:00
Ben Turner d127d39066 Basic xpcshell test for testing IPDL 2009-09-01 15:17:24 -07:00
Chris Jones b1a481f984 bug 513920: synchronously "connect" to parent process from child process 2009-09-01 11:27:09 -05:00
Chris Jones 7c66ade25e fix build bustage; include prtime.h in IPDL code and avoid conflicting CaseInsensitiveCompare decls 2009-09-01 10:01:50 -05:00
Ben Turner 52304392d9 Rework ipcshell to become xpcshell 2009-08-28 16:16:19 -07:00
Chris Jones 277ec34983 bug 511440: leak count the protocol actor classes. Patch from robin_bb, thanks! r=cjones 2009-08-31 12:54:25 -05:00
Ben Turner 5e40a9c813 Rework chromium initialization, r=beast 2009-08-28 12:46:21 -07:00
Ben Turner 1094ca0d54 Backing out stuff that doesn't work 2009-08-27 16:05:38 -07:00
Ben Turner 1452dae7df Fix build bustage? 2009-08-27 15:54:05 -07:00
Ben Turner 04629837fd Rework chromium initialization, revert accidental change 2009-08-27 14:17:01 -07:00
Ben Turner d1fe55ed88 Rework chromium initialization 2009-08-27 14:11:10 -07:00
Chris Jones 20d542c5c3 drop the banhammer on sync parent-to-child messages 2009-08-25 18:52:12 -05:00
Ben Turner 447b61265c Fix testshell to use the new callback commands, and shut down properly 2009-08-25 16:07:22 -07:00
Chris Jones 19629c5061 add IPDL front-end support for transitioning to one of a set of states 2009-08-19 21:21:46 -05:00
Chris Jones c3dba716ad add real front-end support for multiple start states in IPDL 2009-08-19 18:35:22 -05:00
Chris Jones 4dccfc13d8 enable the actor before calling the ctor hook 2009-08-19 18:14:24 -05:00
Chris Jones 1a75cee8b5 add RecvCtor() hooks to match RecvDtor() 2009-08-19 17:54:54 -05:00
Chris Jones 1e8c583fb6 require IPDL filename Foo.ipdl to define protocol Foo 2009-08-19 16:08:21 -05:00
Chris Jones fa5e2b9c2f allow empty sub-protocols 2009-08-19 15:50:46 -05:00
Chris Jones af3a6b6b7a add "power-user" ctor interface method that accepts pre-constructed actors 2009-08-19 15:39:10 -05:00
Robin Bate Beorop fd2302af3b 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 94ef1ca8f4 simplify some *Channel code. enforce more SyncChannel invariants 2009-08-19 10:44:56 -05:00
Chris Jones f410d28b87 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 700f636da4 s/String/nsCString/ for IPDL example 2009-08-18 11:08:38 -05:00
Chris Jones 77d9a06005 allow implementations to be notified when a dtor message is received 2009-08-14 16:46:49 -05:00