[Lldb-commits] [lldb] Allow option to ignore module load errors in ScriptedProcess (PR #127153)
via lldb-commits
lldb-commits at lists.llvm.org
Thu Feb 20 17:16:48 PST 2025
================
@@ -46,22 +46,82 @@ def __init__(self, exe_ctx: lldb.SBExecutionContext, args: lldb.SBStructuredData
if len(self.threads) == 2:
self.threads[len(self.threads) - 1].is_stopped = True
- corefile_module = self.get_module_with_name(
- self.corefile_target, "libbaz.dylib"
- )
- if not corefile_module or not corefile_module.IsValid():
- return
- module_path = os.path.join(
- corefile_module.GetFileSpec().GetDirectory(),
- corefile_module.GetFileSpec().GetFilename(),
- )
- if not os.path.exists(module_path):
- return
- module_load_addr = corefile_module.GetObjectFileHeaderAddress().GetLoadAddress(
- self.corefile_target
- )
+ custom_modules = args.GetValueForKey("custom_modules")
+ if custom_modules.GetType() == lldb.eStructuredDataTypeArray:
+ for id in range(custom_modules.GetSize()):
+
+ custom_module = custom_modules.GetItemAtIndex(id)
+ if (
+ not custom_module
+ or not custom_module.IsValid()
+ or not custom_module.GetType() == lldb.eStructuredDataTypeDictionary
+ ):
+ continue
+
+ # Get custom module path from args
+ module_path_arg = custom_module.GetValueForKey("path")
+ module_path = None
+ if (
+ not module_path_arg
+ or not module_path_arg.IsValid()
+ or not module_path_arg.GetType() == lldb.eStructuredDataTypeString
+ ):
+ return
+
+ module_path = module_path_arg.GetStringValue(100)
+ module_name = os.path.basename(module_path)
+
+ # Get ignore_module_load_error boolean from args
+ ignore_module_load_error = False
+ ignore_module_load_error_arg = custom_module.GetValueForKey(
+ "ignore_module_load_error"
+ )
+ if (
+ ignore_module_load_error_arg
+ and ignore_module_load_error_arg.IsValid()
+ and ignore_module_load_error_arg.GetType()
+ == lldb.eStructuredDataTypeBoolean
+ ):
+ ignore_module_load_error = (
+ ignore_module_load_error_arg.GetBooleanValue()
+ )
----------------
rchamala wrote:
Yes, will remove it
https://github.com/llvm/llvm-project/pull/127153
More information about the lldb-commits
mailing list