diff options
Diffstat (limited to 'melib/src/backends/jmap/objects/email/import.rs')
-rw-r--r-- | melib/src/backends/jmap/objects/email/import.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/melib/src/backends/jmap/objects/email/import.rs b/melib/src/backends/jmap/objects/email/import.rs index 638c58c3..7c360526 100644 --- a/melib/src/backends/jmap/objects/email/import.rs +++ b/melib/src/backends/jmap/objects/email/import.rs @@ -184,7 +184,8 @@ pub struct ImportResponse { impl std::convert::TryFrom<&RawValue> for ImportResponse { type Error = crate::error::MeliError; fn try_from(t: &RawValue) -> Result<ImportResponse> { - let res: (String, ImportResponse, String) = serde_json::from_str(t.get())?; + let res: (String, ImportResponse, String) = + serde_json::from_str(t.get()).map_err(|err| crate::error::MeliError::new(format!("BUG: Could not deserialize server JSON response properly, please report this!\nReply from server: {}", &t)).set_source(Some(Arc::new(err))).set_kind(ErrorKind::Bug))?; assert_eq!(&res.0, &ImportCall::NAME); Ok(res.1) } |