diff options
author | Max Kellermann <max@musicpd.org> | 2019-07-09 18:17:41 +0200 |
---|---|---|
committer | Max Kellermann <max@musicpd.org> | 2019-07-12 17:11:14 +0200 |
commit | b94de51ac4f1f8117547fb3b4ade24ef363a802d (patch) | |
tree | a8be95ed4802e251fc6bf26d1206ecb0d7665e97 /src/system | |
parent | db024c27d5912a89a51edaef143f6f74601ececa (diff) |
system/Error: move code to IsErrno()
Diffstat (limited to 'src/system')
-rw-r--r-- | src/system/Error.hxx | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/system/Error.hxx b/src/system/Error.hxx index a94678872..92c638f4f 100644 --- a/src/system/Error.hxx +++ b/src/system/Error.hxx @@ -148,6 +148,14 @@ FormatErrno(const char *fmt, Args&&... args) noexcept } gcc_pure +inline bool +IsErrno(const std::system_error &e, int code) noexcept +{ + return e.code().category() == ErrnoCategory() && + e.code().value() == code; +} + +gcc_pure static inline bool IsFileNotFound(const std::system_error &e) noexcept { @@ -155,8 +163,7 @@ IsFileNotFound(const std::system_error &e) noexcept return e.code().category() == std::system_category() && e.code().value() == ERROR_FILE_NOT_FOUND; #else - return e.code().category() == ErrnoCategory() && - e.code().value() == ENOENT; + return IsErrno(e, ENOENT); #endif } @@ -168,8 +175,7 @@ IsPathNotFound(const std::system_error &e) noexcept return e.code().category() == std::system_category() && e.code().value() == ERROR_PATH_NOT_FOUND; #else - return e.code().category() == ErrnoCategory() && - e.code().value() == ENOTDIR; + return IsErrno(e, ENOTDIR); #endif } @@ -181,8 +187,7 @@ IsAccessDenied(const std::system_error &e) noexcept return e.code().category() == std::system_category() && e.code().value() == ERROR_ACCESS_DENIED; #else - return e.code().category() == ErrnoCategory() && - e.code().value() == EACCES; + return IsErrno(e, EACCES); #endif } |