From 0d5fe9ec8963a26361b8bf1af17e029afc87f952 Mon Sep 17 00:00:00 2001 From: KyleMiles Date: Tue, 22 Aug 2023 14:03:18 -0400 Subject: Change how DWARF Import initializes to enable unit tests --- rust/examples/dwarf/dwarf_import/src/lib.rs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'rust/examples') diff --git a/rust/examples/dwarf/dwarf_import/src/lib.rs b/rust/examples/dwarf/dwarf_import/src/lib.rs index 4a0d5a97..c1f3206d 100644 --- a/rust/examples/dwarf/dwarf_import/src/lib.rs +++ b/rust/examples/dwarf/dwarf_import/src/lib.rs @@ -27,6 +27,7 @@ use binaryninja::{ binaryview::{BinaryView, BinaryViewExt}, debuginfo::{CustomDebugInfoParser, DebugInfo, DebugInfoParser}, logger, + settings::Settings, templatesimplifier::simplify_str_to_str, }; use dwarfreader::{ @@ -252,7 +253,8 @@ struct DWARFParser; impl CustomDebugInfoParser for DWARFParser { fn is_valid(&self, view: &BinaryView) -> bool { - dwarfreader::is_valid(view) + Settings::new("").get_bool("corePlugins.dwarfImport", None, None) + && dwarfreader::is_valid(view) } fn parse_info( @@ -262,9 +264,13 @@ impl CustomDebugInfoParser for DWARFParser { debug_file: &BinaryView, progress: Box Result<(), ()>>, ) -> bool { - // Parse dwarf info in raw view or from a separate file - parse_dwarf(debug_file, progress).commit_info(debug_info); - true + if Settings::new("").get_bool("corePlugins.dwarfImport", None, None) { + // Parse dwarf info in raw view or from a separate file + parse_dwarf(debug_file, progress).commit_info(debug_info); + true + } else { + false + } } } -- cgit v1.3.1