commit 1dab8bae21bc32e5d4e3ff954f4919d6506ad2e1
parent e0ccec219b5dae32a6c469f01a615509e61dbc5e
Author: Nick Mathewson <nickm@torproject.org>
Date: Thu, 4 Jan 2018 12:20:54 -0500
smartlist.rs: The libc::c_char type is not the same as i8.
The code had been using c_char and i8 interchangeably, but it turns
out that c_char is only i8 on platforms where "char" is signed. On
other platforms, c_char is u8.
Fixes bug 24794; bug not on any released Tor.
Diffstat:
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/rust/smartlist/smartlist.rs b/src/rust/smartlist/smartlist.rs
@@ -33,7 +33,7 @@ impl Smartlist<String> for Stringlist {
// unsafe, as we need to extract the smartlist list into a vector of
// pointers, and then transform each element into a Rust string.
- let elems: &[*const i8] =
+ let elems: &[*const c_char] =
unsafe { slice::from_raw_parts(self.list, self.num_used as usize) };
for elem in elems.iter() {