use strings instead of vecs to read childs stdio
This commit is contained in:
parent
b90400a1c7
commit
56e7c525a4
|
@ -80,8 +80,8 @@ where
|
|||
let mut stderr = child.stderr.take().expect("Failed to take stdout");
|
||||
|
||||
let mut wtr = Writer::from_writer(stdin);
|
||||
let mut captured_out = Vec::new();
|
||||
let mut captured_err = Vec::new();
|
||||
let mut captured_out = String::new();
|
||||
let mut captured_err = String::new();
|
||||
|
||||
for entry in entries {
|
||||
// write to process' stdin
|
||||
|
@ -92,14 +92,15 @@ where
|
|||
entry.note.unwrap_or_else(|| "".into()),
|
||||
entry.sheet,
|
||||
])?;
|
||||
wtr.flush()?;
|
||||
|
||||
// read process' stdout and stderr
|
||||
stdout.read_to_end(&mut captured_out)?;
|
||||
write!(out, "{}", String::from_utf8_lossy(&captured_out))?;
|
||||
stdout.read_to_string(&mut captured_out)?;
|
||||
write!(out, "{}", &captured_out)?;
|
||||
captured_out.clear();
|
||||
|
||||
stderr.read_to_end(&mut captured_err)?;
|
||||
write!(err, "{}", String::from_utf8_lossy(&captured_err))?;
|
||||
stderr.read_to_string(&mut captured_err)?;
|
||||
write!(err, "{}", &captured_err)?;
|
||||
captured_err.clear();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue