From 224e24b283b8be99415431856e6b63dea7305996 Mon Sep 17 00:00:00 2001 From: Brian Potchik Date: Mon, 19 Apr 2021 15:39:33 -0400 Subject: Fix Mach-O duplicate symbol handling for external relocations. --- rust/src/binaryview.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'rust/src/binaryview.rs') diff --git a/rust/src/binaryview.rs b/rust/src/binaryview.rs index 528e3374..c5df4f61 100644 --- a/rust/src/binaryview.rs +++ b/rust/src/binaryview.rs @@ -385,12 +385,18 @@ pub trait BinaryViewExt: BinaryViewBase { }; unsafe { - BNDefineAutoSymbolAndVariableOrFunction( + let raw_sym = BNDefineAutoSymbolAndVariableOrFunction( self.as_ref().handle, plat.handle, sym.handle, raw_type, ); + + if raw_sym.is_null() { + return Err(()); + } + + Ok(Ref::new(Symbol::from_raw(raw_sym))) } } -- cgit v1.3.1