From 47a084069c9b253dc5ec5c92c14527845ed89bec Mon Sep 17 00:00:00 2001 From: eaon Date: Tue, 20 Nov 2018 22:36:29 -0500 Subject: Match up Database::remove_message with Message::filename return type --- src/database.rs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/database.rs b/src/database.rs index 8f365cb..82579f3 100644 --- a/src/database.rs +++ b/src/database.rs @@ -243,7 +243,7 @@ impl Database { pub fn remove_message<'d, P>(&'d self, path: &P) -> Status where - P: AsRef, + P: AsRef, { ::remove_message(self, path) } @@ -299,14 +299,19 @@ pub trait DatabaseExt { fn remove_message<'d, D, P>(database: D, path: &P) -> Status where D: Into>, - P: AsRef, + P: AsRef, { let dbref = database.into(); - let msg_path = CString::new(path.as_ref()).unwrap(); - - Status::from(unsafe { - ffi::notmuch_database_remove_message(dbref.handle.ptr, msg_path.as_ptr()) - }) + match path.as_ref().to_str() { + Some(path_str) => { + let msg_path = CString::new(path_str).unwrap(); + + Status::from(unsafe { + ffi::notmuch_database_remove_message(dbref.handle.ptr, msg_path.as_ptr()) + }) + } + None => Status::FileError + } } } -- cgit v1.2.1