Handle todos

This commit is contained in:
Peter Hebden 2023-07-09 01:33:48 +01:00 committed by David Peter
parent d929becefc
commit 906e774372
2 changed files with 13 additions and 2 deletions

View File

@ -98,7 +98,9 @@ impl<'b> Controller<'b> {
};
if let Err(error) = result {
match writer {
OutputHandle::FmtWrite(writer) => todo!(),
// It doesn't make much sense to send errors straight to stderr if the user
// provided their own buffer, so we just return it.
OutputHandle::FmtWrite(_) => return Err(error),
OutputHandle::IoWrite(ref mut writer) => {
if attached_to_pager {
handle_error(&error, writer);

View File

@ -134,7 +134,16 @@ impl<'a> Printer for SimplePrinter<'a> {
} else {
match handle {
OutputHandle::IoWrite(handle) => handle.write_all(line_buffer)?,
OutputHandle::FmtWrite(handle) => todo!(),
OutputHandle::FmtWrite(handle) => {
write!(
handle,
"{}",
std::str::from_utf8(line_buffer).map_err(|_| Error::Msg(
"encountered invalid utf8 while printing to non-io buffer"
.to_string()
))?
)?;
}
}
};
}