jingham added a comment. In D57552#1381094 <https://reviews.llvm.org/D57552#1381094>, @ted wrote:
> In D57552#1381046 <https://reviews.llvm.org/D57552#1381046>, @jingham wrote: > > > In D57552#1380782 <https://reviews.llvm.org/D57552#1380782>, @ted wrote: > > > > > FYI, @jingham , this is also an issue with DYLD plugins, if the file in > > > the link map starts with ".". "image search-paths add . > > > /path/to/my/libraries" fails in this case, because "./library.so" gets > > > changed to "library.so". > > > > > > This should fix that issue as well, since image search-paths are also > > PathMappingLists. I don't see any tests for this, however. Do you have > > something handy you could turn into a test? > > > I don't think this will fix it, because the problem happens in the initial > FileSpec, before we get to search-paths. > > From source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp, > DYLDRendezvous::ReadSOEntryFromMemory(): > > std::string file_path = ReadStringFromMemory(entry.path_addr); > entry.file_spec.SetFile(file_path, false, FileSpec::Style::native); > > > FileSpec::SetFile normalizes the path, which will remove a leading "./", so > "image search-paths add . /path/to/my/lib", which would work with > "./mylib.so", won't work with "mylib.so". > > I think I can write a test that uses LD_LIBRARY_PATH and a subdirectory so > the target can load "./mylib.so", but LLDB won't be able to see it without a > search-path. That sounds like it will have to be fixed somewhere else, and not part of this patch then. Can you file a bug to get that fixed? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D57552/new/ https://reviews.llvm.org/D57552 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits