For PR495:

Get rid of the difference between file paths and directory paths. The Path
class now simply stores a path that can refer to either a file or a
directory. This required various changes in the implementation and interface
of the class with the corresponding impact to its users. Doxygen comments were
also updated to reflect these changes. Interface changes are:

appendDirectory -> appendComponent
appendFile -> appendComponent
elideDirectory -> eraseComponent
elideFile -> eraseComponent
elideSuffix -> eraseSuffix
renameFile -> rename
setDirectory -> set
setFile -> set

Changes pass Dejagnu and llvm-test/SingleSource tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22349 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer
2005-07-07 23:21:43 +00:00
parent b3d59701c8
commit dd04df0ec3
29 changed files with 249 additions and 331 deletions

View File

@ -187,7 +187,7 @@ Archive::parseMemberHeader(const char*& At, const char* End) {
member->next = 0;
member->prev = 0;
member->parent = this;
member->path.setFile(pathname);
member->path.set(pathname);
member->info.fileSize = MemberSize;
member->info.modTime.fromEpochTime(atoi(Hdr->date));
unsigned int mode;

View File

@ -450,17 +450,17 @@ Archive::writeToDisk(bool CreateSymbolTable, bool TruncateNames, bool Compress){
// Close up shop
FinalFile.close();
arch.close();
TmpArchive.destroyFile();
TmpArchive.destroy();
} else {
// We don't have to insert the symbol table, so just renaming the temp
// file to the correct name will suffice.
TmpArchive.renameFile(archPath);
TmpArchive.rename(archPath);
}
} catch (...) {
// Make sure we clean up.
if (TmpArchive.exists())
TmpArchive.destroyFile();
TmpArchive.destroy();
throw;
}
}