File tree 1 file changed +10
-1
lines changed
lldb/source/Plugins/ObjectFile/Mach-O
1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -5140,8 +5140,17 @@ uint32_t ObjectFileMachO::GetDependentModules(FileSpecList &files) {
5140
5140
case LC_LOADFVMLIB:
5141
5141
case LC_LOAD_UPWARD_DYLIB: {
5142
5142
uint32_t name_offset = cmd_offset + m_data.GetU32 (&offset);
5143
+ bool is_delayed_init = false ;
5144
+ uint32_t use_command_marker = m_data.GetU32 (&offset);
5145
+ if (use_command_marker == 0x1a741800 /* DYLIB_USE_MARKER */ ) {
5146
+ offset += 4 ; /* uint32_t current_version */
5147
+ offset += 4 ; /* uint32_t compat_version */
5148
+ uint32_t flags = m_data.GetU32 (&offset);
5149
+ if (flags & 0x08 /* DYLIB_USE_DELAYED_INIT */ )
5150
+ is_delayed_init = true ;
5151
+ }
5143
5152
const char *path = m_data.PeekCStr (name_offset);
5144
- if (path) {
5153
+ if (path && !is_delayed_init ) {
5145
5154
if (load_cmd.cmd == LC_RPATH)
5146
5155
rpath_paths.push_back (path);
5147
5156
else {
You can’t perform that action at this time.
0 commit comments