From 47ef9cd42471dbc4ff85affb3f6747778562a547 Mon Sep 17 00:00:00 2001 From: Mason Reed Date: Fri, 7 Feb 2025 00:01:02 -0500 Subject: Fix Rust LinearDisassemblyLine not freeing properly --- rust/src/linear_view.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'rust/src') diff --git a/rust/src/linear_view.rs b/rust/src/linear_view.rs index 1c92ddaa..65447d24 100644 --- a/rust/src/linear_view.rs +++ b/rust/src/linear_view.rs @@ -469,7 +469,12 @@ impl LinearDisassemblyLine { } pub(crate) fn free_raw(value: BNLinearDisassemblyLine) { - let _ = unsafe { Function::ref_from_raw(value.function) }; + if !value.function.is_null() { + let _ = unsafe { Function::ref_from_raw(value.function) }; + } + if !value.block.is_null() { + let _ = unsafe { BasicBlock::ref_from_raw(value.block, NativeBlock::new()) }; + } DisassemblyTextLine::free_raw(value.contents); } } -- cgit v1.3.1