aboutsummaryrefslogtreecommitdiffstats
path: root/src/database.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/database.rs')
-rw-r--r--src/database.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/database.rs b/src/database.rs
index f1d743b..3fc2c4e 100644
--- a/src/database.rs
+++ b/src/database.rs
@@ -2,7 +2,7 @@ use std::ops::Drop;
use std::iter::Iterator;
use std::ptr;
use std::path::Path;
-use std::ffi::CString;
+use std::ffi::{CStr, CString};
use libc;
@@ -126,14 +126,14 @@ impl Database {
}
pub fn revision(&self) -> Revision {
- let uuid_p: *mut libc::c_char = ptr::null_mut();
+ let uuid_p: *const libc::c_char = ptr::null();
let revision = unsafe {
- ffi::notmuch_database_get_revision(self.0, (&uuid_p) as *const _ as *const *mut libc::c_char)
+ ffi::notmuch_database_get_revision(self.0, (&uuid_p) as *const _ as *mut *const libc::c_char)
};
- let uuid = unsafe { CString::from_raw(uuid_p) };
+ let uuid = unsafe { CStr::from_ptr(uuid_p) };
- Revision{revision, uuid: uuid.to_str().unwrap().to_string()}
+ Revision{revision, uuid: uuid.to_string_lossy().into_owned()}
}
pub fn needs_upgrade(&self) -> bool {