diff options
author | Max Kellermann <max@duempel.org> | 2015-02-28 20:42:50 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2015-02-28 23:00:26 +0100 |
commit | 90a61b6babe3528efd982511790057e1e1e39b81 (patch) | |
tree | cae3a8072a056118865a988042e1f1269d11e277 /src/fs/CheckFile.cxx | |
parent | 00583bc4a8357cf43930151650dc058225675403 (diff) | |
download | mpd-90a61b6babe3528efd982511790057e1e1e39b81.tar.gz mpd-90a61b6babe3528efd982511790057e1e1e39b81.tar.xz mpd-90a61b6babe3528efd982511790057e1e1e39b81.zip |
fs/FileInfo: new library providing GetFileInfo()
Replaces StatFile(), with a portable data object.
Diffstat (limited to 'src/fs/CheckFile.cxx')
-rw-r--r-- | src/fs/CheckFile.cxx | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/fs/CheckFile.cxx b/src/fs/CheckFile.cxx index bd1798094..0068db639 100644 --- a/src/fs/CheckFile.cxx +++ b/src/fs/CheckFile.cxx @@ -21,7 +21,7 @@ #include "CheckFile.hxx" #include "Log.hxx" #include "config/ConfigError.hxx" -#include "FileSystem.hxx" +#include "FileInfo.hxx" #include "Path.hxx" #include "AllocatedPath.hxx" #include "DirectoryReader.hxx" @@ -32,15 +32,15 @@ void CheckDirectoryReadable(Path path_fs) { - struct stat st; - if (!StatFile(path_fs, st)) { - FormatErrno(config_domain, - "Failed to stat directory \"%s\"", - path_fs.c_str()); + Error error; + + FileInfo fi; + if (!GetFileInfo(path_fs, fi, error)) { + LogError(error); return; } - if (!S_ISDIR(st.st_mode)) { + if (!fi.IsDirectory()) { FormatError(config_domain, "Not a directory: %s", path_fs.c_str()); return; @@ -49,7 +49,7 @@ CheckDirectoryReadable(Path path_fs) #ifndef WIN32 const auto x = AllocatedPath::Build(path_fs, PathTraitsFS::CURRENT_DIRECTORY); - if (!StatFile(x, st) && errno == EACCES) + if (!GetFileInfo(x, fi) && errno == EACCES) FormatError(config_domain, "No permission to traverse (\"execute\") directory: %s", path_fs.c_str()); |