Unverified Commit 30317230 authored by Brian Anderson's avatar Brian Anderson Committed by GitHub

Fix a memory leak in TitanDBOptions::set_dirname (#395)

Found via valgrind.
Signed-off-by: 's avatarBrian Anderson <andersrb@gmail.com>
parent 79dee639
...@@ -33,8 +33,10 @@ impl TitanDBOptions { ...@@ -33,8 +33,10 @@ impl TitanDBOptions {
pub fn set_dirname(&mut self, name: &str) { pub fn set_dirname(&mut self, name: &str) {
let s = CString::new(name).unwrap(); let s = CString::new(name).unwrap();
// Safety: set_dirname copies the C string into std::string. We
// still own s and must drop it.
unsafe { unsafe {
crocksdb_ffi::ctitandb_options_set_dirname(self.inner, s.into_raw()); crocksdb_ffi::ctitandb_options_set_dirname(self.inner, s.as_ptr());
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment