Commit b3ae5fb6 authored by Tyler Neely's avatar Tyler Neely

Fix breakage due to transmutation changes.

parent 00df70b2
...@@ -56,9 +56,9 @@ pub extern "C" fn full_merge_callback( ...@@ -56,9 +56,9 @@ pub extern "C" fn full_merge_callback(
&mut MergeOperands::new(operands_list, &mut MergeOperands::new(operands_list,
operands_list_len, operands_list_len,
num_operands); num_operands);
let key: &[u8] = mem::transmute(slice::from_raw_parts(&raw_key, key_len as usize)); let key: &[u8] = slice::from_raw_parts(raw_key as *const u8, key_len as usize);
let oldval: &[u8] = mem::transmute(slice::from_raw_parts(&existing_value, let oldval: &[u8] = slice::from_raw_parts(existing_value as *const u8,
existing_value_len as usize)); existing_value_len as usize);
let mut result = let mut result =
(cb.merge_fn)(key, Some(oldval), operands); (cb.merge_fn)(key, Some(oldval), operands);
result.shrink_to_fit(); result.shrink_to_fit();
...@@ -83,7 +83,7 @@ pub extern "C" fn partial_merge_callback( ...@@ -83,7 +83,7 @@ pub extern "C" fn partial_merge_callback(
let operands = &mut MergeOperands::new(operands_list, let operands = &mut MergeOperands::new(operands_list,
operands_list_len, operands_list_len,
num_operands); num_operands);
let key: &[u8] = mem::transmute(slice::from_raw_parts(&raw_key, key_len as usize)); let key: &[u8] = slice::from_raw_parts(raw_key as *const u8, key_len as usize);
let mut result = (cb.merge_fn)(key, None, operands); let mut result = (cb.merge_fn)(key, None, operands);
result.shrink_to_fit(); result.shrink_to_fit();
//TODO(tan) investigate zero-copy techniques to improve performance //TODO(tan) investigate zero-copy techniques to improve performance
......
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