diff options
author | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-13 18:51:47 +0000 |
---|---|---|
committer | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-13 18:51:47 +0000 |
commit | b5ce736e9dc768a1156dd33a906b3ed4bfbd2276 (patch) | |
tree | 596e448d5064142853a64646a78382398f968adc /base/test | |
parent | 96b3760243c36ed846179c18f22b91d4c996fe66 (diff) | |
download | chromium_src-b5ce736e9dc768a1156dd33a906b3ed4bfbd2276.zip chromium_src-b5ce736e9dc768a1156dd33a906b3ed4bfbd2276.tar.gz chromium_src-b5ce736e9dc768a1156dd33a906b3ed4bfbd2276.tar.bz2 |
Clean up users of a deprecated base::LaunchApp API.
BUG=88990
Review URL: http://codereview.chromium.org/7346017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92393 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/test')
-rw-r--r-- | base/test/multiprocess_test.cc | 32 | ||||
-rw-r--r-- | base/test/multiprocess_test.h | 16 |
2 files changed, 16 insertions, 32 deletions
diff --git a/base/test/multiprocess_test.cc b/base/test/multiprocess_test.cc index a1a3bbe..c691b5f 100644 --- a/base/test/multiprocess_test.cc +++ b/base/test/multiprocess_test.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -19,12 +19,8 @@ MultiProcessTest::MultiProcessTest() { ProcessHandle MultiProcessTest::SpawnChild(const std::string& procname, bool debug_on_start) { -#if defined(OS_WIN) - return SpawnChildImpl(procname, debug_on_start); -#elif defined(OS_POSIX) file_handle_mapping_vector empty_file_list; return SpawnChildImpl(procname, empty_file_list, debug_on_start); -#endif } #if defined(OS_POSIX) @@ -45,30 +41,20 @@ CommandLine MultiProcessTest::MakeCmdLine(const std::string& procname, return cl; } -#if defined(OS_WIN) - -ProcessHandle MultiProcessTest::SpawnChildImpl(const std::string& procname, - bool debug_on_start) { - ProcessHandle handle = static_cast<ProcessHandle>(NULL); - LaunchApp(MakeCmdLine(procname, debug_on_start), - false, true, &handle); - return handle; -} - -#elif defined(OS_POSIX) - -// TODO(port): with the CommandLine refactoring, this code is very similar -// to the Windows code. Investigate whether this can be made shorter. ProcessHandle MultiProcessTest::SpawnChildImpl( const std::string& procname, const file_handle_mapping_vector& fds_to_map, bool debug_on_start) { ProcessHandle handle = kNullProcessHandle; - LaunchApp(MakeCmdLine(procname, debug_on_start).argv(), - fds_to_map, false, &handle); + base::LaunchOptions options; + options.process_handle = &handle; +#if defined(OS_WIN) + options.start_hidden = true; +#else + options.fds_to_remap = &fds_to_map; +#endif + base::LaunchProcess(MakeCmdLine(procname, debug_on_start), options); return handle; } -#endif - } // namespace base diff --git a/base/test/multiprocess_test.h b/base/test/multiprocess_test.h index af7a180..bfb9e2a 100644 --- a/base/test/multiprocess_test.h +++ b/base/test/multiprocess_test.h @@ -1,4 +1,4 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -58,6 +58,9 @@ class MultiProcessTest : public PlatformTest { ProcessHandle SpawnChild(const std::string& procname, bool debug_on_start); #if defined(OS_POSIX) + // TODO(evan): see if we can delete this via more refactoring. + // SpawnChild() should just take a base::LaunchOptions so that we don't + // need multiple versions of it. ProcessHandle SpawnChild(const std::string& procname, const file_handle_mapping_vector& fds_to_map, bool debug_on_start); @@ -68,17 +71,12 @@ class MultiProcessTest : public PlatformTest { bool debug_on_start); private: -#if defined(OS_WIN) - ProcessHandle SpawnChildImpl(const std::string& procname, - bool debug_on_start); - -#elif defined(OS_POSIX) - // TODO(port): with the CommandLine refactoring, this code is very similar - // to the Windows code. Investigate whether this can be made shorter. + // Shared implementation of SpawnChild. + // TODO: |fds_to_map| is unused on Windows; see above TODO about + // further refactoring. ProcessHandle SpawnChildImpl(const std::string& procname, const file_handle_mapping_vector& fds_to_map, bool debug_on_start); -#endif DISALLOW_COPY_AND_ASSIGN(MultiProcessTest); }; |