| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #define _CRT_SECURE_NO_WARNINGS | 5 #define _CRT_SECURE_NO_WARNINGS |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/debug/alias.h" | 10 #include "base/debug/alias.h" |
| (...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 271 base::GetTerminationStatus(process.Handle(), &exit_code)); | 271 base::GetTerminationStatus(process.Handle(), &exit_code)); |
| 272 EXPECT_EQ(kExpectedStillRunningExitCode, exit_code); | 272 EXPECT_EQ(kExpectedStillRunningExitCode, exit_code); |
| 273 | 273 |
| 274 SignalChildren(signal_file.c_str()); | 274 SignalChildren(signal_file.c_str()); |
| 275 exit_code = 42; | 275 exit_code = 42; |
| 276 base::TerminationStatus status = | 276 base::TerminationStatus status = |
| 277 WaitForChildTermination(process.Handle(), &exit_code); | 277 WaitForChildTermination(process.Handle(), &exit_code); |
| 278 EXPECT_EQ(base::TERMINATION_STATUS_PROCESS_CRASHED, status); | 278 EXPECT_EQ(base::TERMINATION_STATUS_PROCESS_CRASHED, status); |
| 279 | 279 |
| 280 #if defined(OS_WIN) | 280 #if defined(OS_WIN) |
| 281 EXPECT_EQ(0xc0000005, exit_code); | 281 EXPECT_EQ(static_cast<int>(0xc0000005), exit_code); |
| 282 #elif defined(OS_POSIX) | 282 #elif defined(OS_POSIX) |
| 283 int signaled = WIFSIGNALED(exit_code); | 283 int signaled = WIFSIGNALED(exit_code); |
| 284 EXPECT_NE(0, signaled); | 284 EXPECT_NE(0, signaled); |
| 285 int signal = WTERMSIG(exit_code); | 285 int signal = WTERMSIG(exit_code); |
| 286 EXPECT_EQ(SIGSEGV, signal); | 286 EXPECT_EQ(SIGSEGV, signal); |
| 287 #endif | 287 #endif |
| 288 | 288 |
| 289 // Reset signal handlers back to "normal". | 289 // Reset signal handlers back to "normal". |
| 290 base::debug::EnableInProcessStackDumping(); | 290 base::debug::EnableInProcessStackDumping(); |
| 291 remove(signal_file.c_str()); | 291 remove(signal_file.c_str()); |
| (...skipping 828 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1120 options.current_directory = base::FilePath("/dev/null"); | 1120 options.current_directory = base::FilePath("/dev/null"); |
| 1121 | 1121 |
| 1122 base::Process process(SpawnChildWithOptions("SimpleChildProcess", options)); | 1122 base::Process process(SpawnChildWithOptions("SimpleChildProcess", options)); |
| 1123 ASSERT_TRUE(process.IsValid()); | 1123 ASSERT_TRUE(process.IsValid()); |
| 1124 | 1124 |
| 1125 int exit_code = kSuccess; | 1125 int exit_code = kSuccess; |
| 1126 EXPECT_TRUE(process.WaitForExit(&exit_code)); | 1126 EXPECT_TRUE(process.WaitForExit(&exit_code)); |
| 1127 EXPECT_NE(kSuccess, exit_code); | 1127 EXPECT_NE(kSuccess, exit_code); |
| 1128 } | 1128 } |
| 1129 #endif | 1129 #endif |
| OLD | NEW |