summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManos Pitsidianakis <el13635@mail.ntua.gr>2019-06-23 11:39:19 +0300
committerManos Pitsidianakis <el13635@mail.ntua.gr>2019-06-23 11:39:19 +0300
commit2d7f9ca46f01d7917f1bff4623dbcef7ec92de03 (patch)
tree0d4454fe852cb4d2cdc33979019e899a213ebbb6
parente0e520b2c40b41f7adea475e4ffa28ca2dd7b48e (diff)
melib: rename files after getting lock in maildir
-rw-r--r--melib/src/backends/maildir.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/melib/src/backends/maildir.rs b/melib/src/backends/maildir.rs
index 3adcce6f..2f6aa198 100644
--- a/melib/src/backends/maildir.rs
+++ b/melib/src/backends/maildir.rs
@@ -159,16 +159,16 @@ impl<'a> BackendOp for MaildirOp {
if !(flags & Flag::TRASHED).is_empty() {
new_name.push('T');
}
-
- debug!("renaming {:?} to {:?}", path, new_name);
- fs::rename(&path, &new_name)?;
- debug!("success in rename");
let old_hash = envelope.hash();
let new_name: PathBuf = new_name.into();
let hash_index = self.hash_index.clone();
let mut map = hash_index.lock().unwrap();
let map = map.entry(self.folder_hash).or_default();
map.entry(old_hash).or_default().modified = Some(new_name.clone());
+
+ debug!("renaming {:?} to {:?}", path, new_name);
+ fs::rename(&path, &new_name)?;
+ debug!("success in rename");
Ok(())
}
}