diff options
-rw-r--r-- | src/mail_view.rs | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/src/mail_view.rs b/src/mail_view.rs index f9e7825..437c280 100644 --- a/src/mail_view.rs +++ b/src/mail_view.rs @@ -50,8 +50,13 @@ impl MailView { let view = if view.len() == 0 { debug!("Falling back to mailfile parsing"); - LinearLayout::vertical() - .child(MailView::path_to_textview(mailfile)?) + LinearLayout::vertical().child({ + std::fs::read(&mailfile) + .map_err(Error::from) + .and_then(|b| String::from_utf8(b).map_err(Error::from)) + .inspect(|s| debug!("Found {} bytes from {}", s.bytes().len(), mailfile.display())) + .map(TextView::new)? + }) } else { view }; @@ -74,14 +79,6 @@ impl MailView { collect_into(&mut vec, pm).map(|_| vec) } - fn path_to_textview(pb: PathBuf) -> Result<TextView> { - std::fs::read(&pb) - .map_err(Error::from) - .and_then(|b| String::from_utf8(b).map_err(Error::from)) - .inspect(|s| debug!("Found {} bytes from {}", s.bytes().len(), pb.display())) - .map(TextView::new) - } - } impl View for MailView { |