Author: Adrian Prantl Date: 2023-10-30T10:00:40-07:00 New Revision: c42b640208aa74c65cef5943bc05522780a72723
URL: https://github.com/llvm/llvm-project/commit/c42b640208aa74c65cef5943bc05522780a72723 DIFF: https://github.com/llvm/llvm-project/commit/c42b640208aa74c65cef5943bc05522780a72723.diff LOG: Fix the DEVELOPER_DIR computation (#70528) The code was incorrectly going into the wrong direction by removing one component instead of appendeing /Developer to it. Due to fallback mechanisms in xcrun this never seemed to have caused any issues. Added: Modified: lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm Removed: ################################################################################ diff --git a/lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm b/lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm index e3506a01c606b78..33d94504fe70f8c 100644 --- a/lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm +++ b/lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm @@ -461,13 +461,11 @@ static void ParseOSVersion(llvm::VersionTuple &version, NSString *Key) { // Invoke xcrun with the shlib dir. if (FileSpec fspec = HostInfo::GetShlibDir()) { if (FileSystem::Instance().Exists(fspec)) { - std::string contents_dir = - XcodeSDK::FindXcodeContentsDirectoryInPath(fspec.GetPath()); - llvm::StringRef shlib_developer_dir = - llvm::sys::path::parent_path(contents_dir); - if (!shlib_developer_dir.empty()) { - auto sdk = - xcrun(sdk_name, show_sdk_path, std::move(shlib_developer_dir)); + llvm::SmallString<0> shlib_developer_dir( + XcodeSDK::FindXcodeContentsDirectoryInPath(fspec.GetPath())); + llvm::sys::path::append(shlib_developer_dir, "Developer"); + if (FileSystem::Instance().Exists(shlib_developer_dir)) { + auto sdk = xcrun(sdk_name, show_sdk_path, shlib_developer_dir); if (!sdk) return sdk.takeError(); if (!sdk->empty()) _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits