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 |