diff options
| author | Jason Molenda <jmolenda@apple.com> | 2017-01-19 00:20:29 +0000 |
|---|---|---|
| committer | Jason Molenda <jmolenda@apple.com> | 2017-01-19 00:20:29 +0000 |
| commit | 848c7be02a9709a13279ff85b09e6229855c43dc (patch) | |
| tree | 1dac4bf69404abc0bb40cdf4648ea43fe4e1d2c5 | |
| parent | 3d3f6190abb92ccc5bb81e90885ab14316218ffc (diff) | |
| download | bcm5719-llvm-848c7be02a9709a13279ff85b09e6229855c43dc.tar.gz bcm5719-llvm-848c7be02a9709a13279ff85b09e6229855c43dc.zip | |
Fix a problem with the new dyld interface code -- when a new process
starts up, we need to clear the target's image list and only add
the binaries into the target that are actually present in this
process run.
<rdar://problem/29857613>
llvm-svn: 292454
| -rw-r--r-- | lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp b/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp index 7b027de783e..0f8b1902c8b 100644 --- a/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp +++ b/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp @@ -151,6 +151,11 @@ void DynamicLoaderMacOS::ClearNotificationBreakpoint() { void DynamicLoaderMacOS::DoInitialImageFetch() { Log *log(lldb_private::GetLogIfAnyCategoriesSet(LIBLLDB_LOG_DYNAMIC_LOADER)); + // Remove any binaries we pre-loaded in the Target before launching/attaching. + // If the same binaries are present in the process, we'll get them from the + // shared module cache, we won't need to re-load them from disk. + UnloadAllImages(); + StructuredData::ObjectSP all_image_info_json_sp( m_process->GetLoadedDynamicLibrariesInfos()); ImageInfo::collection image_infos; |

