diff --git a/substrate/primitives/api/proc-macro/src/impl_runtime_apis.rs b/substrate/primitives/api/proc-macro/src/impl_runtime_apis.rs index 7423dbec55..72c833a18c 100644 --- a/substrate/primitives/api/proc-macro/src/impl_runtime_apis.rs +++ b/substrate/primitives/api/proc-macro/src/impl_runtime_apis.rs @@ -173,7 +173,7 @@ fn generate_wasm_interface(impls: &[ItemImpl]) -> Result { #( #attrs )* #[cfg(not(feature = "std"))] #[no_mangle] - pub fn #fn_name(input_data: *mut u8, input_len: usize) -> u64 { + pub unsafe fn #fn_name(input_data: *mut u8, input_len: usize) -> u64 { let mut #input = if input_len == 0 { &[0u8; 0] } else { diff --git a/substrate/primitives/runtime/src/traits.rs b/substrate/primitives/runtime/src/traits.rs index d843bdc478..9664deb51b 100644 --- a/substrate/primitives/runtime/src/traits.rs +++ b/substrate/primitives/runtime/src/traits.rs @@ -715,7 +715,7 @@ pub trait SignedExtension: Codec + Debug + Sync + Send + Clone + Eq + PartialEq info: &DispatchInfoOf, len: usize, ) -> Result { - self.validate(who, call, info.clone(), len) + self.validate(who, call, info, len) .map(|_| Self::Pre::default()) .map_err(Into::into) } @@ -749,7 +749,7 @@ pub trait SignedExtension: Codec + Debug + Sync + Send + Clone + Eq + PartialEq info: &DispatchInfoOf, len: usize, ) -> Result { - Self::validate_unsigned(call, info.clone(), len) + Self::validate_unsigned(call, info, len) .map(|_| Self::Pre::default()) .map_err(Into::into) }