Hello Richard, can this be merged into 3.8? It creates some trivial noise under valgrind.
Joerg On Fri, Jan 15, 2016 at 10:29:34PM -0000, Joerg Sonnenberger via cfe-commits wrote: > Author: joerg > Date: Fri Jan 15 16:29:34 2016 > New Revision: 257947 > > URL: http://llvm.org/viewvc/llvm-project?rev=257947&view=rev > Log: > Avoid self-assignment of SmallString, trigger UB behavior down the road. > > Modified: > cfe/trunk/tools/driver/driver.cpp > > Modified: cfe/trunk/tools/driver/driver.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/driver/driver.cpp?rev=257947&r1=257946&r2=257947&view=diff > ============================================================================== > --- cfe/trunk/tools/driver/driver.cpp (original) > +++ cfe/trunk/tools/driver/driver.cpp Fri Jan 15 16:29:34 2016 > @@ -290,9 +290,9 @@ static void SetInstallDir(SmallVectorImp > 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) { > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits