2018-01-02 14:11:41 +01:00
|
|
|
// ignore-cloudabi no processes
|
2017-10-17 18:45:42 -07:00
|
|
|
// ignore-emscripten no processes
|
2019-04-24 09:26:33 -07:00
|
|
|
// ignore-sgx no processes
|
2018-01-02 14:11:41 +01:00
|
|
|
// ignore-windows
|
2013-11-12 11:37:14 +10:00
|
|
|
|
2015-02-16 16:04:02 +02:00
|
|
|
use std::env;
|
2015-04-10 11:12:43 -07:00
|
|
|
use std::process::Command;
|
2013-11-12 11:37:14 +10:00
|
|
|
|
2014-01-03 15:30:54 -08:00
|
|
|
pub fn main() {
|
2015-02-16 16:04:02 +02:00
|
|
|
let args: Vec<String> = env::args().collect();
|
2015-02-01 21:53:25 -05:00
|
|
|
if args.len() >= 2 && args[1] == "signal" {
|
2013-11-12 11:37:14 +10:00
|
|
|
// Raise a segfault.
|
2016-08-30 05:34:21 +03:00
|
|
|
unsafe { *(1 as *mut isize) = 0; }
|
2013-11-12 11:37:14 +10:00
|
|
|
} else {
|
2015-02-01 21:53:25 -05:00
|
|
|
let status = Command::new(&args[0]).arg("signal").status().unwrap();
|
2015-04-10 11:12:43 -07:00
|
|
|
assert!(status.code().is_none());
|
2013-11-12 11:37:14 +10:00
|
|
|
}
|
|
|
|
}
|