The problem seems to be the WNOHANG option that is being set. It works fine if the process is still active, but if it already exited it seems to fail. Remove the options (from
|
let options = options.0.cast_signed() | libc::WNOHANG; // Don't block. |
) fixes the issue. However, the problem then becomes that we're blocking (causing the process::process_wait_on_process_that_does_not_stop test to time out).
The problem seems to be the
WNOHANGoption that is being set. It works fine if the process is still active, but if it already exited it seems to fail. Remove the options (froma10/src/kqueue/process.rs
Line 56 in 2f325ad