From a4d33dbdb03c1e492598123d2ac6fdf3b53a9f45 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 30 Apr 2020 08:02:08 +1000 Subject: [PATCH] report filename when unable to read data --- rslib/src/media/changetracker.rs | 5 ++++- rslib/src/media/files.rs | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/rslib/src/media/changetracker.rs b/rslib/src/media/changetracker.rs index d931c4563..6b61b0b67 100644 --- a/rslib/src/media/changetracker.rs +++ b/rslib/src/media/changetracker.rs @@ -151,7 +151,10 @@ where } // add entry to the list - let sha1 = Some(sha1_of_file(&dentry.path())?); + let data = sha1_of_file(&dentry.path()).map_err(|e| AnkiError::IOError { + info: format!("unable to read {}: {}", fname, e), + })?; + let sha1 = Some(data); added_or_changed.push(FilesystemEntry { fname: fname.to_string(), sha1, diff --git a/rslib/src/media/files.rs b/rslib/src/media/files.rs index 791f0ad5e..3949b9a0b 100644 --- a/rslib/src/media/files.rs +++ b/rslib/src/media/files.rs @@ -1,7 +1,7 @@ // Copyright: Ankitects Pty Ltd and contributors // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html -use crate::err::Result; +use crate::err::{AnkiError, Result}; use crate::log::{debug, Logger}; use lazy_static::lazy_static; use regex::Regex; @@ -402,7 +402,9 @@ pub(super) fn data_for_file(media_folder: &Path, fname: &str) -> Result