blob: 7d6e453f7338e4d6fd1e782f2b61996c3716f330 [file] [log] [blame] [edit]
use crate::OpenError;
use std::ffi::OsStr;
use std::process::{Command, Stdio};
pub(crate) fn open(path: &OsStr) -> Result<(), OpenError> {
let mut open = Command::new("open")
.arg(path)
.stdin(Stdio::null())
.stdout(Stdio::null())
.stderr(Stdio::piped())
.spawn()
.map_err(OpenError::Io)?;
crate::wait_child(&mut open, "open")
}
#[cfg(feature = "reveal")]
pub(crate) fn reveal(path: &std::path::Path) -> Result<(), OpenError> {
let mut open = Command::new("open")
.arg("-R")
.arg("--")
.arg(path)
.stdin(Stdio::null())
.stdout(Stdio::null())
.stderr(Stdio::piped())
.spawn()
.map_err(OpenError::Io)?;
crate::wait_child(&mut open, "open")
}