Commit Graph

98 Commits

Author SHA1 Message Date
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
140b811282 Bug 771765 - Support template content process, part 2: IPC and glue changes. r=bent
Changes include:
* Getting/resetting platform thread ID.
* Creating an IPC channel with existing file descriptor sent from the template process.
* Child process host with existing process forked from the template.
2013-05-31 21:16:54 +08:00
Ryan VanderMeulen
a4125b396c Backed out changeset 09274cc38453 (bug 869167) for OSX crashes. 2013-08-16 16:56:06 -04:00
Andrey Zaytsev
4cf3ec0900 Bug 869167 - Firefox hangs on Mac when ASan-built plugin is used in non-ASan build. r=bsmedberg 2013-08-16 15:31:03 -04:00
Mark Hammond
52f4cb206c Bug 902790 - prevent browser crash if child process fails to start. r=jlebar 2013-08-09 16:23:24 +10:00
Mike Shal
1c7eb2843f Bug 889787 - Define XP_LINUX globally; r=ted 2013-07-16 17:10:10 -04:00
Shelly Lin
96a46d1102 Bug 811636 - Close the child FD in the parent asap in order to detect when the child closes its FD. r=dhylands 2013-07-09 10:37:33 +08:00
Mike Hommey
aaed6c5d7f Bug 859763 - Remove more remains of the old linker. r=blassey 2013-04-10 09:02:32 +02:00
Chris Jones
bc9b3368d7 Bug 786631, part 2: Make the prelaunch process totipotent and specialize when it's taken. r=jlebar 2013-01-17 12:06:36 -08:00
Chris Jones
d6f21e8891 Back out bug 786631 2013-01-17 12:49:56 -08:00
Chris Jones
e97fb1ad7f Bug 786631, part 2: Make the prelaunch process totipotent and specialize when it's taken. r=jlebar 2013-01-17 12:06:36 -08:00
Landry Breuil
01d2dc34a6 Bug 830303 - Fix plugin-container LD_LIBRARY_PATH on BSD (regression from 753046) r=cjones 2013-01-14 22:38:17 +01:00
Chris Jones
fb825fe86d Rollup of bug 821192: Ensure that content processes don't see an inconsistent app dir. r=bent,dhylands
Bug 821192, part 1: Fix the watchdog timeout code. r=dhylands
Bug 821192, part 2: Add an interface to join all live content processes. r=bent
Bug 821192, part 3: Join all subprocesses before restarting the main process, when we're e.g. about to apply an update. r=dhylands
2012-12-28 01:45:16 -08:00
Jim Mathies
d768d99a05 Bug 820200 - Pass application directory to XRE_InitEmbedding2 in content process. r=bsmedberg 2012-12-18 10:24:42 -06:00
Ms2ger
711f1fd480 Bug 787933 - Stop using stdin types in IPC code; r=bsmedberg+cjones sr=cjones 2012-09-17 10:37:20 +02:00
Randell Jesup
65539ef89c Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
Chris Jones
0e062741d9 Bug 782456, part 1: Let clients of GeckoChildProcessHost specify privileges. r=bent 2012-08-29 09:24:48 -03:00
Martin Husemann
675f8473f1 Bug 753046 - Add IPC support for BSDs, ipc/glue part. r=cjones 2012-08-28 23:16:29 +02:00
Michael Wu
ef40e6f1bc Bug 784858: Pass LD_PRELOAD to child processes. r=cjones 2012-08-22 18:50:25 -07:00
Ehsan Akhgari
e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Chris Jones
a7acbe1bfe Bug 774131, part 2: Add GeckoChildProcessHost::LaunchAndWaitForProcessHandle() to do that, use it in ContentParent, and share more process-launching code. r=bent 2012-08-07 16:29:32 -07:00
Chris Jones
97d7b479ff Bug 774131, part 1: Refactor GeckoChildProcessHost to use a state enum and eagerly create a ProcessHandle. r=bent 2012-08-07 16:29:32 -07:00
Guillaume Destuynder
68357eb8db Bug 776647: Add support for dropping to a "nobody" user after fork()ing, and use that on gonk. r=cjones 2012-07-26 21:42:56 -07:00
Chris Jones
b3fce04949 Backed out changeset 201612a0b133 2012-07-26 21:55:41 -07:00
Guillaume Destuynder
53db4466be Bug 776647: Add support for dropping to a "nobody" user after fork()ing, and use that on gonk. r=cjones 2012-07-26 21:42:56 -07:00
Chris Jones
aff6dd1169 Bug 745148, part 2: GeckoChildProcessHost can't drop messages on the floor. Queue them and hand them off to the *Channel. r=bent 2012-07-14 14:21:32 -07:00
Chris Jones
83a29ba724 Bug 773830: Check GetEnabled() before OOPInit(). r=ted 2012-07-13 17:47:23 -07:00
Ryan VanderMeulen
cfea5c2634 Merge the last PGO-green inbound changeset to m-c. 2012-07-12 20:46:27 -04:00
Benjamin Smedberg
b341414c8f Bug 771251 - OOP crash reporting accesses the directory service off the main thread. In addition, the first design of the crash injector callback meant that we're dropping some set of Flash crashes which happen during an RPC call. r=ted
* Fix the directory service usage by saving the pending directory path from OOPInit.
* Force clients to call OOPInit on the main thread.
* Make injected crashes available via TakeMinidumpForChild and give each crash a sequence number so that we can pick the earliest crash from the three possibilities; delete the other two to avoid polluting about:crashes
2012-07-10 22:20:05 -04:00
Tim Abraldes
d45421032d Bug 771090 - Use NS_GRE_DIR instead of current process dir when looking up plugin container. r=bsmedberg 2012-07-10 18:31:04 -04:00
Chris Jones
fe33408429 Bug 765734, part 0.1: Gecko subprocesses on Gonk want propdb too. r=mwu
--HG--
extra : rebase_source : dc881f7d75698ebab6e0a576e912af4f543b00a6
2012-07-12 05:51:57 -07:00
Geoff Lankow
5cefea8480 Bug 749930 - Replace uses of nsILocalFile with nsIFile (compiled code only); r=bsmedberg 2012-06-06 14:08:30 +12:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Mike Hommey
e923bd700b Bug 711144 - Prepend LD_LIBRARY_PATH instead of appending to it when starting plugin-container. r=bsmedberg 2011-12-28 08:23:42 +01:00
Michael Wu
5dd6a67845 Bug 694206 - Add Gonk (B2G) widget backend, r=cjones 2011-11-10 16:17:46 -08:00
Jeremy Huddleston
b1d63ad959 Bug 691138 - ipc: fails to build darwin/x11. r=smichaud 2011-10-14 16:54:46 +09:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Josh Aas
0aea95062a Bug 669036: Fix bad path to child process binary that caused assertions. r=bsmedberg 2011-09-07 00:51:38 -04:00
Mike Hommey
0ec7b9b37e Bug 573958 - Extend LD_LIBRARY_PATH instead of replacing it during plugin-container initialization. r=bsmedberg 2011-07-21 09:53:29 +02:00
Neil Rashbrook
16212e084a Bug 660535 Remove useless use of PromiseFlatCString r=cjones 2011-06-09 21:15:10 +01:00
Chris Jones
9e4b4086e4 Bug 564086, part c.1: Allow non-XPCOM processes (which don't use omnijar) to spawn other non-XPCOM subprocesses. r=glandium 2011-06-03 13:33:55 -05:00
Chris Jones
db73b3b4cf Bug 564086, part c: Remove dependency on XPCOM in subprocesses-spawning code. r=bsmedberg 2011-06-03 13:33:55 -05:00
Steven Michaud
cf976ee5ab Bug 621117 - Support native cursor manipulation from OOP plugins on OS X. r=josh,bsmedberg a=sheriff 2011-05-24 01:58:28 -05:00
Mike Hommey
7de58a1cfa Bug 620931 part 3 - Allow GRE and XUL application to use omni.jar independently. r=bsmedberg,r=mwu
We now store two independent locations for an omni.jar, allowing GRE/XRE and
XUL application to each have their own omni.jar. And since xulrunner setups
are very independent from the XUL applications, we implement support for both
omni.jar and non omni.jar cases in the same runtime, with the side effect of
allowing to switch from one to the other manually without rebuilding the
binaries.

We let the mozilla::Omnijar API handle both cases, so that callers don't need
too much work to support them.

We also make the preferences service load the same set of preferences in all
the various cases (unified vs. separate, omni.jar vs. no omni.jar).

The child process launcher for IPC is modified to pass the base directories
needed for the mozilla::Omnijar API initialization in the child process.

Finally, the startupcache file name canonicalization is modified to separate
APP and GRE resources.
2011-02-25 12:53:36 +01:00
Mike Hommey
cd4a4570ef Bug 620931 part 2.5 - Properly quote arguments on Windows when starting child processes. r=rstrong 2011-05-12 15:44:35 +02:00
Chris Jones
f7c811a3e7 Bug 556214, part 3: IPC code wants to be using non-reentrant Monitor. r=bent 2011-04-29 14:21:57 -05:00
Chris Jones
31aa2c4e77 Bug 556214, parts 1 and 1.1: Rename Monitor to ReentrantMonitor and fix existing Monitor users. r=roc
--HG--
rename : xpcom/glue/Monitor.h => xpcom/glue/ReentrantMonitor.h
2011-04-29 14:21:57 -05:00
Jason Duell
4d46a8bfba Bug 534764. Allow separate NSPR logs if requested, in case of interleaving issues; r=mayhemer,wtc 2011-03-25 19:40:50 -04:00
L. David Baron
7c0acef8c1 Backout changeset b9e6454362ef (Bug 620931 part 3) for causing bug 644790. 2011-03-24 21:07:05 -07:00
Mike Hommey
0cfcd44b08 Bug 620931 part 3 - Allow GRE and XUL application to use omni.jar independently. r=bsmedberg
We now store two independent locations for an omni.jar, allowing GRE/XRE and
XUL application to each have their own omni.jar. And since xulrunner setups
are very independent from the XUL applications, we implement support for both
omni.jar and non omni.jar cases in the same runtime, with the side effect of
allowing to switch from one to the other manually without rebuilding the
binaries.

We let the mozilla::Omnijar API handle both cases, so that callers don't need
too much work to support them.

We also make the preferences service load the same set of preferences in all
the various cases (unified vs. separate, omni.jar vs. no omni.jar).

The child process launcher for IPC is modified to pass the base directories
needed for the mozilla::Omnijar API initialization in the child process.

Finally, the startupcache file name canonicalization is modified to separate
APP and GRE resources.
2011-03-24 15:28:14 +01:00
Brian Crowder
5d7822abb3 Bug 606074: removing bogus include, r=me, a=cleanup, DONTBUILD 2011-01-20 09:17:42 -08:00