Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(812)

Unified Diff: components/browser_watcher/watcher_client_win.cc

Issue 2950153002: Improve process launch handle sharing API. (Closed)
Patch Set: Fix Mojo launcher, review comments Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/browser_watcher/watcher_client_win.cc
diff --git a/components/browser_watcher/watcher_client_win.cc b/components/browser_watcher/watcher_client_win.cc
index d411a2cf6538f8047677b6b5bfee69cc7be77e7b..f062ff5753136c7fa7a38a9b9a98d5de84fdbd54 100644
--- a/components/browser_watcher/watcher_client_win.cc
+++ b/components/browser_watcher/watcher_client_win.cc
@@ -25,10 +25,8 @@ base::Process OpenOwnProcessInheritable() {
} // namespace
WatcherClient::WatcherClient(const CommandLineGenerator& command_line_generator)
- : use_legacy_launch_(base::win::GetVersion() < base::win::VERSION_VISTA),
- command_line_generator_(command_line_generator),
- process_(base::kNullProcessHandle) {
-}
+ : command_line_generator_(command_line_generator),
+ process_(base::kNullProcessHandle) {}
WatcherClient::~WatcherClient() {
}
@@ -41,20 +39,14 @@ void WatcherClient::LaunchWatcher() {
DCHECK(self.IsValid());
base::CommandLine cmd_line(command_line_generator_.Run(self.Handle()));
- base::HandlesToInheritVector to_inherit;
base::LaunchOptions options;
options.start_hidden = true;
- if (use_legacy_launch_) {
- // Launch the child process inheriting all handles on XP.
- options.inherit_handles = true;
- } else {
- // Launch the child process inheriting only |self| on
- // Vista and better.
- to_inherit.push_back(self.Handle());
- to_inherit.insert(to_inherit.end(), inherited_handles_.begin(),
- inherited_handles_.end());
- options.handles_to_inherit = &to_inherit;
- }
+
+ // Launch the child process inheriting only |self|.
+ options.handles_to_inherit.push_back(self.Handle());
+ options.handles_to_inherit.insert(options.handles_to_inherit.end(),
+ inherited_handles_.begin(),
+ inherited_handles_.end());
process_ = base::LaunchProcess(cmd_line, options);
if (!process_.IsValid())

Powered by Google App Engine
This is Rietveld 408576698