diff options
author | Joerg Sonnenberger <joerg@bec.de> | 2016-01-15 22:29:34 +0000 |
---|---|---|
committer | Joerg Sonnenberger <joerg@bec.de> | 2016-01-15 22:29:34 +0000 |
commit | 9db01aaf78c97f8822ef41610c71061abcb07339 (patch) | |
tree | 25e74aa81dda01784baa9fc287f0f309cab12bcb /clang/tools/driver/driver.cpp | |
parent | fa0b4b271a2e91204e4a2198713fd10730d72f7d (diff) | |
download | bcm5719-llvm-9db01aaf78c97f8822ef41610c71061abcb07339.tar.gz bcm5719-llvm-9db01aaf78c97f8822ef41610c71061abcb07339.zip |
Avoid self-assignment of SmallString, trigger UB behavior down the road.
llvm-svn: 257947
Diffstat (limited to 'clang/tools/driver/driver.cpp')
-rw-r--r-- | clang/tools/driver/driver.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index ea218d5403d..de14425d361 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/tools/driver/driver.cpp @@ -290,9 +290,9 @@ static void SetInstallDir(SmallVectorImpl<const char *> &argv, if (CanonicalPrefixes) llvm::sys::fs::make_absolute(InstalledPath); - InstalledPath = llvm::sys::path::parent_path(InstalledPath); - if (llvm::sys::fs::exists(InstalledPath.c_str())) - TheDriver.setInstalledDir(InstalledPath); + StringRef InstalledPathParent(llvm::sys::path::parent_path(InstalledPath)); + if (llvm::sys::fs::exists(InstalledPathParent)) + TheDriver.setInstalledDir(InstalledPathParent); } static int ExecuteCC1Tool(ArrayRef<const char *> argv, StringRef Tool) { |