[Lldb-commits] [PATCH] D30698: Resubmit "Use LLVM for all stat related calls"

Zachary Turner via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Mar 7 08:26:43 PST 2017


zturner created this revision.
Herald added a subscriber: emaste.

This was broken due to LLVM's stat code following symlinks.  I've added an option on the LLVM side to not follow symlinks and updated this patch to use it everywhere possible.  The cases I couldn't get were where LLDB calls `is_directory` / `is_regular_file` / `exists`, etc.  Those would return false on symlinks before, but now return true if the target is a directory / file / exists.  I don't think that should be an issue, as I think generally that's what'e expected.

I can test this on Linux in a couple of hours unless someone beats me to it.


https://reviews.llvm.org/D30698

Files:
  lldb/include/lldb/Host/FileSpec.h
  lldb/source/API/SBPlatform.cpp
  lldb/source/Commands/CommandCompletions.cpp
  lldb/source/Commands/CommandObjectTarget.cpp
  lldb/source/Core/Debugger.cpp
  lldb/source/Core/FileSpecList.cpp
  lldb/source/Core/Module.cpp
  lldb/source/Core/ModuleList.cpp
  lldb/source/Core/PluginManager.cpp
  lldb/source/Host/common/FileSpec.cpp
  lldb/source/Host/common/MonitoringProcessLauncher.cpp
  lldb/source/Host/common/Symbols.cpp
  lldb/source/Host/macosx/Host.mm
  lldb/source/Host/macosx/HostInfoMacOSX.mm
  lldb/source/Host/macosx/Symbols.cpp
  lldb/source/Host/posix/FileSystem.cpp
  lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformAppleTVSimulator.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformAppleWatchSimulator.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
  lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.h
  lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.h
  lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.h
  lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp
  lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.h
  lldb/source/Plugins/Platform/MacOSX/PlatformiOSSimulator.cpp
  lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.cpp
  lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp
  lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
  lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
  lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
  lldb/source/Target/ModuleCache.cpp
  lldb/source/Target/Platform.cpp
  lldb/source/Target/TargetList.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30698.90858.patch
Type: text/x-patch
Size: 61637 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170307/62317ac4/attachment-0001.bin>


More information about the lldb-commits mailing list