- Reduce indentation
- Extract caching of the DbgShellCommand and the dsymForUUID executable (or equivalent)
- Check the DBGShellCommands before falling back to /usr/local/bin/dsymForUUID
- Don't check ~rc/bin/dsymForUUID
- Improve error reporting
- Don't cache the value of LLDB_APPLE_DSYMFORUUID_EXECUTABLE
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
- Fix typo
- Still resolve the LLDB_APPLE_DSYMFORUUID_EXECUTABLE in case it's a relative path
Comment Actions
LGTM, I was looking at this method last week and had the same idea -- I started on a patch similar to this, but hadn't finished yet.
lldb/source/Symbol/LocateSymbolFileMacOSX.cpp | ||
---|---|---|
565–599 | I had this conditional also test if LLDB_APPLE_DSYMFORUUID_EXECUTABLE was currently set in the environment, which is equivalent to if the DBGShellCommand was set in the com.apple.DebugSymbol preferences. But as I think through it, I think it's fine -- code is calling Symbol::DownloadObjectAndSymbolFile() when it is wiling to do a potentially expensive search for the debug information almost always - force==true is the default, and all of the important ones we're testing in the testsuite. |
I had this conditional also test if LLDB_APPLE_DSYMFORUUID_EXECUTABLE was currently set in the environment, which is equivalent to if the DBGShellCommand was set in the com.apple.DebugSymbol preferences. But as I think through it, I think it's fine -- code is calling Symbol::DownloadObjectAndSymbolFile() when it is wiling to do a potentially expensive search for the debug information almost always - force==true is the default, and all of the important ones we're testing in the testsuite.