diff options
| author | Marc-Antoine Perennou <Marc-Antoine@Perennou.com> | 2017-02-09 10:11:36 +0100 |
|---|---|---|
| committer | Marc-Antoine Perennou <Marc-Antoine@Perennou.com> | 2017-02-09 10:11:36 +0100 |
| commit | ec73ef9dc85b7b1cb986eb7c85fc8093cc668f60 (patch) | |
| tree | 6485eee90adc1849cce9634efd79ea62f1a34789 /src/libstd/process.rs | |
| parent | 4268872807cf8bc5c8c435794d1c82d21899d67b (diff) | |
| parent | fd2f8a4536cb9b45abd72b8ff977ad48618602b3 (diff) | |
| download | rust-ec73ef9dc85b7b1cb986eb7c85fc8093cc668f60.tar.gz rust-ec73ef9dc85b7b1cb986eb7c85fc8093cc668f60.zip | |
Merge branch 'master' of git://github.com/rust-lang/rust
* 'master' of git://github.com/rust-lang/rust: (70 commits) sanitizer-dylib: only run where std for x86_64-linux is available travis: Fix build order of dist-x86-linux fix the sanitizer-dylib test on non x86_64 linux hosts dist-x86-linux: install newer kernel headers enable sanitizers on build job that tests x86_64 linux enable sanitizers on x86_64-linux releases use helper function in the rebuild logic of the rustc_*san crates build/test the sanitizers only when --enable-sanitizers is used sanitizer support Add missing urls on join_paths Add test for #27433 Add more examples, get everything passing at last. Remove some leftover makefiles. Add more test for rustdoc --test Rename manifest_version to manifest-version reference: clarify #[cfg] section Bump stable release date rustbuild: Clean build/dist on `make clean` Add missing urls for current_dir review nits ...
Diffstat (limited to 'src/libstd/process.rs')
| -rw-r--r-- | src/libstd/process.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/libstd/process.rs b/src/libstd/process.rs index c16b97ebda5..4ff35738b50 100644 --- a/src/libstd/process.rs +++ b/src/libstd/process.rs @@ -844,9 +844,9 @@ impl Child { /// guaranteed to repeatedly return a successful exit status so long as the /// child has already exited. /// - /// If the child has exited, then `Ok(status)` is returned. If the exit - /// status is not available at this time then an error is returned with the - /// error kind `WouldBlock`. If an error occurs, then that error is returned. + /// If the child has exited, then `Ok(Some(status))` is returned. If the + /// exit status is not available at this time then `Ok(None)` is returned. + /// If an error occurs, then that error is returned. /// /// Note that unlike `wait`, this function will not attempt to drop stdin. /// @@ -857,14 +857,13 @@ impl Child { /// ```no_run /// #![feature(process_try_wait)] /// - /// use std::io; /// use std::process::Command; /// /// let mut child = Command::new("ls").spawn().unwrap(); /// /// match child.try_wait() { - /// Ok(status) => println!("exited with: {}", status), - /// Err(ref e) if e.kind() == io::ErrorKind::WouldBlock => { + /// Ok(Some(status)) => println!("exited with: {}", status), + /// Ok(None) => { /// println!("status not ready yet, let's really wait"); /// let res = child.wait(); /// println!("result: {:?}", res); @@ -873,8 +872,8 @@ impl Child { /// } /// ``` #[unstable(feature = "process_try_wait", issue = "38903")] - pub fn try_wait(&mut self) -> io::Result<ExitStatus> { - self.handle.try_wait().map(ExitStatus) + pub fn try_wait(&mut self) -> io::Result<Option<ExitStatus>> { + Ok(self.handle.try_wait()?.map(ExitStatus)) } /// Simultaneously waits for the child to exit and collect all remaining |
