summaryrefslogtreecommitdiff
path: root/rust/src/debuginfo.rs
diff options
context:
space:
mode:
authorRubens Brandao <git@rubens.io>2024-04-17 09:35:12 -0300
committerRubens Brandao <git@rubens.io>2024-04-17 09:41:58 -0300
commit9717866665a42356881b062fcd80bc09492ee8b8 (patch)
tree3deda26aa66d55689eaf1333b67fceed0631b27a /rust/src/debuginfo.rs
parentf408eb32085956f7e29e0f15fd92aa4b72453370 (diff)
remove unecessary and crash causing zeroed call inits
Diffstat (limited to 'rust/src/debuginfo.rs')
-rw-r--r--rust/src/debuginfo.rs23
1 files changed, 7 insertions, 16 deletions
diff --git a/rust/src/debuginfo.rs b/rust/src/debuginfo.rs
index ab4f8f6b..08ba2517 100644
--- a/rust/src/debuginfo.rs
+++ b/rust/src/debuginfo.rs
@@ -74,7 +74,7 @@ use crate::{
types::{DataVariableAndName, NameAndType, Type},
};
-use std::{hash::Hash, mem, os::raw::c_void, ptr, slice};
+use std::{hash::Hash, os::raw::c_void, ptr, slice};
struct ProgressContext(Option<Box<dyn Fn(usize, usize) -> Result<(), ()>>>);
@@ -109,14 +109,14 @@ impl DebugInfoParser {
/// List all debug-info parsers
pub fn list() -> Array<DebugInfoParser> {
- let mut count: usize = unsafe { mem::zeroed() };
+ let mut count = 0;
let raw_parsers = unsafe { BNGetDebugInfoParsers(&mut count as *mut _) };
unsafe { Array::new(raw_parsers, count, ()) }
}
/// Returns a list of debug-info parsers that are valid for the provided binary view
pub fn parsers_for_view(bv: &BinaryView) -> Array<DebugInfoParser> {
- let mut count: usize = unsafe { mem::zeroed() };
+ let mut count = 0;
let raw_parsers = unsafe { BNGetDebugInfoParsersForView(bv.handle, &mut count as *mut _) };
unsafe { Array::new(raw_parsers, count, ()) }
}
@@ -414,10 +414,7 @@ impl DebugInfo {
}
/// Returns a generator of all functions provided by a named DebugInfoParser
- pub fn functions_by_name<S: BnStrCompatible>(
- &self,
- parser_name: S,
- ) -> Vec<DebugFunctionInfo> {
+ pub fn functions_by_name<S: BnStrCompatible>(&self, parser_name: S) -> Vec<DebugFunctionInfo> {
let parser_name = parser_name.into_bytes_with_nul();
let mut count: usize = 0;
@@ -758,21 +755,15 @@ impl DebugInfo {
let short_name_bytes = new_func.short_name.map(|name| name.into_bytes_with_nul());
let short_name = short_name_bytes
.as_ref()
- .map_or(ptr::null_mut() as *mut _, |name| {
- name.as_ptr() as _
- });
+ .map_or(ptr::null_mut() as *mut _, |name| name.as_ptr() as _);
let full_name_bytes = new_func.full_name.map(|name| name.into_bytes_with_nul());
let full_name = full_name_bytes
.as_ref()
- .map_or(ptr::null_mut() as *mut _, |name| {
- name.as_ptr() as _
- });
+ .map_or(ptr::null_mut() as *mut _, |name| name.as_ptr() as _);
let raw_name_bytes = new_func.raw_name.map(|name| name.into_bytes_with_nul());
let raw_name = raw_name_bytes
.as_ref()
- .map_or(ptr::null_mut() as *mut _, |name| {
- name.as_ptr() as _
- });
+ .map_or(ptr::null_mut() as *mut _, |name| name.as_ptr() as _);
let mut components_array: Vec<*const ::std::os::raw::c_char> =
Vec::with_capacity(new_func.components.len());