From 17abe221c07b76513c23c403f0ef29bab9b401ec Mon Sep 17 00:00:00 2001 From: yhirose Date: Thu, 30 Dec 2021 14:54:57 -0500 Subject: [PATCH] Fix is_file problem on Windows (#1153) --- httplib.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/httplib.h b/httplib.h index cb45f07..fcbe211 100644 --- a/httplib.h +++ b/httplib.h @@ -218,7 +218,7 @@ using socket_t = int; #ifdef CPPHTTPLIB_OPENSSL_SUPPORT // these are defined in wincrypt.h and it breaks compilation if BoringSSL is used -#if defined(_WIN32) +#ifdef _WIN32 #undef X509_NAME #undef X509_CERT_PAIR #undef X509_EXTENSIONS @@ -1950,8 +1950,12 @@ inline std::string base64_encode(const std::string &in) { } inline bool is_file(const std::string &path) { +#ifdef _WIN32 + return (_access_s(path.c_str(), 0 ) == 0); +#else struct stat st; return stat(path.c_str(), &st) >= 0 && S_ISREG(st.st_mode); +#endif } inline bool is_dir(const std::string &path) {