Factor FDHandle out of the bytecode reader into the FileUtilities.h support

routines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10642 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2003-12-29 21:35:05 +00:00
parent 872ccce0a8
commit 2d6481cc2a
4 changed files with 69 additions and 16 deletions

View File

@@ -194,3 +194,26 @@ bool llvm::MakeFileExecutable(const std::string &Filename) {
bool llvm::MakeFileReadable(const std::string &Filename) {
return AddPermissionsBits(Filename, 0444);
}
//===----------------------------------------------------------------------===//
// FDHandle class implementation
//
FDHandle::~FDHandle() {
if (FD != -1) close(FD);
}
FDHandle &FDHandle::operator=(int fd) {
if (FD != -1) close(FD);
FD = fd;
return *this;
}
/// take - Take ownership of the file descriptor away from the FDHandle
/// object, so that the file is not closed when the FDHandle is destroyed.
int FDHandle::take() {
int Ret = FD;
FD = -1;
return Ret;
}