Update for changes in Path class interface for exception removal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29834 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer 2006-08-22 22:46:39 +00:00
parent 6ccd01a3ee
commit cab0e43829

View File

@ -108,13 +108,16 @@ Path::isValid() const {
static Path *TempDirectory = NULL;
Path
Path::GetTemporaryDirectory() {
Path::GetTemporaryDirectory(std::string* ErrMsg) {
if (TempDirectory)
return *TempDirectory;
char pathname[MAX_PATH];
if (!GetTempPath(MAX_PATH, pathname))
throw std::string("Can't determine temporary directory");
if (!GetTempPath(MAX_PATH, pathname)) {
if (ErrMsg)
*ErrMsg = "Can't determine temporary directory";
return Path();
}
Path result;
result.set(pathname);
@ -134,19 +137,6 @@ Path::GetTemporaryDirectory() {
return *TempDirectory;
}
Path::Path(const std::string& unverified_path)
: path(unverified_path)
{
FlipBackSlashes(path);
if (unverified_path.empty())
return;
if (this->isValid())
return;
// oops, not valid.
path.clear();
throw std::string(unverified_path + ": path is not valid");
}
// FIXME: the following set of functions don't map to Windows very well.
Path
Path::GetRootDirectory() {