Add more logging and improve errors around folder selection

This commit is contained in:
link2xt
2023-01-04 15:55:54 +00:00
parent 754c7324f5
commit f69acaa13d
2 changed files with 13 additions and 5 deletions

View File

@@ -109,13 +109,14 @@ impl ImapSession {
Ok(newly_selected) => Ok(newly_selected),
Err(err) => match err {
Error::NoFolder(..) => {
info!(context, "Failed to select folder {} because it does not exist, trying to create it.", folder);
self.create(folder).await.with_context(|| {
format!("Couldn't select folder ('{}'), then create() failed", err)
})?;
Ok(self.select_folder(context, Some(folder)).await?)
Ok(self.select_folder(context, Some(folder)).await.with_context(|| format!("failed to select newely created folder {}", folder))?)
}
_ => Err(err.into()),
_ => Err(err).with_context(|| format!("failed to select folder {} with error other than NO, not trying to create it", folder)),
},
}
}