mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-10 14:10:58 +00:00
Remove Path::getMagicNumber.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183839 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
26ace5720d
commit
2a4005688c
@ -219,14 +219,6 @@ namespace sys {
|
||||
/// @name Disk Accessors
|
||||
/// @{
|
||||
public:
|
||||
/// This function retrieves the first \p len bytes of the file associated
|
||||
/// with \p this. These bytes are returned as the "magic number" in the
|
||||
/// \p Magic parameter.
|
||||
/// @returns true if the Path is a file and the magic number is retrieved,
|
||||
/// false otherwise.
|
||||
/// @brief Get the file's magic number.
|
||||
bool getMagicNumber(std::string& Magic, unsigned len) const;
|
||||
|
||||
/// This function determines if the path name in the object references an
|
||||
/// archive file by looking at its magic number.
|
||||
/// @returns true if the file starts with the magic number for an archive
|
||||
|
@ -303,20 +303,6 @@ Path Path::GetMainExecutable(const char *argv0, void *MainAddr) {
|
||||
return Path();
|
||||
}
|
||||
|
||||
bool Path::getMagicNumber(std::string &Magic, unsigned len) const {
|
||||
assert(len < 1024 && "Request for magic string too long");
|
||||
char Buf[1025];
|
||||
int fd = ::open(path.c_str(), O_RDONLY);
|
||||
if (fd < 0)
|
||||
return false;
|
||||
ssize_t bytes_read = ::read(fd, Buf, len);
|
||||
::close(fd);
|
||||
if (ssize_t(len) != bytes_read)
|
||||
return false;
|
||||
Magic.assign(Buf, len);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
Path::exists() const {
|
||||
return 0 == access(path.c_str(), F_OK );
|
||||
|
@ -590,31 +590,6 @@ Path::eraseFromDisk(bool remove_contents, std::string *ErrStr) const {
|
||||
}
|
||||
}
|
||||
|
||||
bool Path::getMagicNumber(std::string& Magic, unsigned len) const {
|
||||
assert(len < 1024 && "Request for magic string too long");
|
||||
char* buf = reinterpret_cast<char*>(alloca(len));
|
||||
|
||||
HANDLE h = CreateFile(path.c_str(),
|
||||
GENERIC_READ,
|
||||
FILE_SHARE_READ,
|
||||
NULL,
|
||||
OPEN_EXISTING,
|
||||
FILE_ATTRIBUTE_NORMAL,
|
||||
NULL);
|
||||
if (h == INVALID_HANDLE_VALUE)
|
||||
return false;
|
||||
|
||||
DWORD nRead = 0;
|
||||
BOOL ret = ReadFile(h, buf, len, &nRead, NULL);
|
||||
CloseHandle(h);
|
||||
|
||||
if (!ret || nRead != len)
|
||||
return false;
|
||||
|
||||
Magic = std::string(buf, len);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
Path::renamePathOnDisk(const Path& newName, std::string* ErrMsg) {
|
||||
if (!MoveFileEx(path.c_str(), newName.c_str(), MOVEFILE_REPLACE_EXISTING))
|
||||
|
Loading…
Reference in New Issue
Block a user