diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2021-10-29 16:24:11 -0700 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2021-10-29 16:25:13 -0700 |
commit | 9091df5fad52ab6a281d7f4d6a508696e6f9fbae (patch) | |
tree | 353bba39a9e0165206b7d4136447af604b6ccdaa /clang/lib/Basic/FileManager.cpp | |
parent | 40a6be4346097c008998d702381b07acbc6c9ae2 (diff) | |
download | llvm-9091df5fad52ab6a281d7f4d6a508696e6f9fbae.zip llvm-9091df5fad52ab6a281d7f4d6a508696e6f9fbae.tar.gz llvm-9091df5fad52ab6a281d7f4d6a508696e6f9fbae.tar.bz2 |
Fix a use-after-scope from 99023627010bbfefb71e25a2b4d056de1cbd354e
Diffstat (limited to 'clang/lib/Basic/FileManager.cpp')
-rw-r--r-- | clang/lib/Basic/FileManager.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Basic/FileManager.cpp b/clang/lib/Basic/FileManager.cpp index 1cb52d5..f4cf278 100644 --- a/clang/lib/Basic/FileManager.cpp +++ b/clang/lib/Basic/FileManager.cpp @@ -123,14 +123,14 @@ FileManager::getDirectoryRef(StringRef DirName, bool CacheFailure) { DirName != llvm::sys::path::root_path(DirName) && llvm::sys::path::is_separator(DirName.back())) DirName = DirName.substr(0, DirName.size()-1); + Optional<std::string> DirNameStr; if (is_style_windows(llvm::sys::path::Style::native)) { // Fixing a problem with "clang C:test.c" on Windows. // Stat("C:") does not recognize "C:" as a valid directory - std::string DirNameStr; if (DirName.size() > 1 && DirName.back() == ':' && DirName.equals_insensitive(llvm::sys::path::root_name(DirName))) { DirNameStr = DirName.str() + '.'; - DirName = DirNameStr; + DirName = *DirNameStr; } } |