summaryrefslogtreecommitdiff
path: root/rust/src
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2022-06-28 14:47:55 -0400
committerGlenn Smith <glenn@vector35.com>2022-06-28 14:47:55 -0400
commit0b667691e9dc087f9f78f0109623bdb7b7f291de (patch)
tree8d10d3ae918c8373f6b36d71b17a5ce4e60ff53a /rust/src
parent33094820efb4f3b712ac4fc57e1913590ba5835f (diff)
Rust API: Fix Type::parameters()
Diffstat (limited to 'rust/src')
-rw-r--r--rust/src/types.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/rust/src/types.rs b/rust/src/types.rs
index c3b211ba..9648f300 100644
--- a/rust/src/types.rs
+++ b/rust/src/types.rs
@@ -630,15 +630,15 @@ impl Type {
pub fn parameters(&self) -> Result<Vec<FunctionParameter<BnString>>> {
unsafe {
let mut count: usize = mem::zeroed();
- let parameters_raw = BNGetTypeParameters(self.handle, &mut count);
+ let parameters_raw: *mut BNFunctionParameter = BNGetTypeParameters(self.handle, &mut count);
if parameters_raw.is_null() {
Err(())
} else {
- let parameters: &[*mut BNFunctionParameter] =
- slice::from_raw_parts(parameters_raw as *mut _, count);
+ let parameters: &[BNFunctionParameter] =
+ slice::from_raw_parts(parameters_raw, count);
let result = (0..count)
- .map(|i| FunctionParameter::from_raw(*parameters[i]))
+ .map(|i| FunctionParameter::from_raw(parameters[i]))
.collect();
BNFreeTypeParameterList(parameters_raw, count);
@@ -1091,7 +1091,7 @@ impl FunctionParameter<BnString> {
Self {
t: Conf::new(
- unsafe { Type::ref_from_raw(handle.type_) },
+ unsafe { Type::ref_from_raw(BNNewTypeReference(handle.type_)) },
handle.typeConfidence,
),
name: name,