| Index: content/zygote/zygote_linux.h
|
| diff --git a/content/zygote/zygote_linux.h b/content/zygote/zygote_linux.h
|
| index ef7e071c9f5b10be1ad6de5abb72ae28cc953d78..f93ea03556470eed2b958bba10181d9ce9e43ee0 100644
|
| --- a/content/zygote/zygote_linux.h
|
| +++ b/content/zygote/zygote_linux.h
|
| @@ -28,7 +28,9 @@ class ZygoteForkDelegate;
|
| // runs it.
|
| class Zygote {
|
| public:
|
| - Zygote(int sandbox_flags, ScopedVector<ZygoteForkDelegate> helpers);
|
| + Zygote(int sandbox_flags, ScopedVector<ZygoteForkDelegate> helpers,
|
| + const std::vector<base::ProcessHandle>& extra_children,
|
| + const std::vector<int>& extra_fds);
|
| ~Zygote();
|
|
|
| bool ProcessRequests();
|
| @@ -123,6 +125,17 @@ class Zygote {
|
|
|
| // Count of how many fork delegates for which we've invoked InitialUMA().
|
| size_t initial_uma_index_;
|
| +
|
| + // This vector contains the PIDs of any child processes which have been
|
| + // created prior to the construction of the Zygote object, and must be reaped
|
| + // before the Zygote exits. The Zygote will perform a blocking wait on these
|
| + // children, so they must be guaranteed to be exiting by the time the Zygote
|
| + // exits.
|
| + std::vector<base::ProcessHandle> extra_children_;
|
| +
|
| + // This vector contains the FDs that must be closed before reaping the extra
|
| + // children.
|
| + std::vector<int> extra_fds_;
|
| };
|
|
|
| } // namespace content
|
|
|