From 4e490be7ac9b2d4624826b75f7ba6035c5f9e089 Mon Sep 17 00:00:00 2001 From: Xusheng Date: Fri, 10 Jun 2022 10:16:05 +0800 Subject: Fix missing debugger_imported definition in PythonScriptingInstance --- python/scriptingprovider.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'python') diff --git a/python/scriptingprovider.py b/python/scriptingprovider.py index e6f55ec1..95e1721f 100644 --- a/python/scriptingprovider.py +++ b/python/scriptingprovider.py @@ -769,6 +769,7 @@ from binaryninja import * self.interpreter.start() self.queued_input = "" self.input_ready_state = ScriptingProviderInputReadyState.ReadyForScriptExecution + self.debugger_imported = False @abc.abstractmethod def perform_stop(self): @@ -817,13 +818,14 @@ from binaryninja import * self.interpreter.current_view = view # By the time this scriptingprovider.py file is imported, the user plugins are not loaded yet. # So `from debugger import DebuggerController` would not work. - from binaryninja.settings import Settings - if os.environ.get('BN_STANDALONE_DEBUGGER'): - from debugger import DebuggerController - self.debugger_imported = True - elif os.environ.get('BN_EXPERIMENTAL_DEBUGGER') or Settings().get_bool('corePlugins.debugger'): - from .debugger import DebuggerController - self.debugger_imported = True + if not self.debugger_imported: + from binaryninja.settings import Settings + if os.environ.get('BN_STANDALONE_DEBUGGER'): + from debugger import DebuggerController + self.debugger_imported = True + elif os.environ.get('BN_EXPERIMENTAL_DEBUGGER') or Settings().get_bool('corePlugins.debugger'): + from .debugger import DebuggerController + self.debugger_imported = True if view is not None and self.debugger_imported: self.interpreter.current_dbg = DebuggerController(view) -- cgit v1.3.1