diff --git a/Common/Common.vcxproj b/Common/Common.vcxproj index b0c4a68747..d58dd4ae75 100644 --- a/Common/Common.vcxproj +++ b/Common/Common.vcxproj @@ -103,7 +103,7 @@ Level3 - _CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_32=1;_M_IX86=1;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_32=1;_M_IX86=1;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) Common/DbgNew.h MultiThreadedDebug ../ext/OpenXR-SDK/include;../ext/glew;../ext/snappy;../ext/glslang;../ext/libpng17;../ext;../ext/zlib;..;../ext/zstd/lib @@ -131,7 +131,7 @@ Level3 Common/DbgNew.h MultiThreadedDebug - _CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;_M_X64=1;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;_M_X64=1;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ../ext/OpenXR-SDK/include;../ext/glew;../ext/snappy;../ext/glslang;../ext/libpng17;../ext;../ext/zlib;..;../ext/zstd/lib NotSet Precise @@ -158,7 +158,7 @@ Level3 Common/DbgNew.h MultiThreadedDebug - _CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ../ext/OpenXR-SDK/include;../ext/glew;../ext/snappy;../ext/glslang;../ext/libpng17;../ext;../ext/zlib;..;../ext/zstd/lib NotSet Precise @@ -186,7 +186,7 @@ MaxSpeed true true - USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_32=1;_M_IX86=1;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_32=1;_M_IX86=1;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) false @@ -219,7 +219,7 @@ MaxSpeed true true - USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;_M_X64=1;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;_M_X64=1;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ../ext/OpenXR-SDK/include;../ext/glew;../ext/snappy;../ext/glslang;../ext/libpng17;../ext;../ext/zlib;..;../ext/zstd/lib @@ -254,7 +254,7 @@ MaxSpeed true true - USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_ARCH_64=1;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ../ext/OpenXR-SDK/include;../ext/glew;../ext/snappy;../ext/glslang;../ext/libpng17;../ext;../ext/zlib;..;../ext/zstd/lib diff --git a/Common/Net/Sinks.cpp b/Common/Net/Sinks.cpp index 4fbfadfbd6..e711d61bc6 100644 --- a/Common/Net/Sinks.cpp +++ b/Common/Net/Sinks.cpp @@ -131,6 +131,10 @@ size_t InputSink::FindNewline() const { bool InputSink::TakeExact(char *buf, size_t bytes) { while (bytes > 0) { + if (hasError_) { + return false; + } + size_t drained = TakeAtMost(buf, bytes); buf += drained; bytes -= drained; @@ -162,6 +166,10 @@ size_t InputSink::TakeAtMost(char *buf, size_t bytes) { bool InputSink::Skip(size_t bytes) { while (bytes > 0) { + if (hasError_) { + return false; + } + size_t drained = std::min(valid_, bytes); AccountDrain(drained); bytes -= drained; @@ -182,16 +190,35 @@ void InputSink::Discard() { read_ = 0; write_ = 0; valid_ = 0; + hasError_ = false; } void InputSink::Fill() { + if (hasError_) { + return; + } + // Avoid small reads if possible. if (BUFFER_SIZE - valid_ > PRESSURE) { // Whatever isn't valid and follows write_ is what's available. size_t avail = BUFFER_SIZE - std::max(write_, valid_); int bytes = recv(fd_, buf_ + write_, avail, MSG_NOSIGNAL); - AccountFill(bytes); + if (bytes < 0) { + int err = socket_errno; + if (err == EWOULDBLOCK || err == EAGAIN) + return; + ERROR_LOG(Log::Net, "Error reading from socket: %d", err); + hasError_ = true; + return; + } + + // Okay, move forward (might be by zero.) + valid_ += bytes; + write_ += bytes; + if (write_ >= BUFFER_SIZE) { + write_ -= BUFFER_SIZE; + } } } @@ -204,23 +231,6 @@ bool InputSink::Block() { return true; } -void InputSink::AccountFill(int bytes) { - if (bytes < 0) { - int err = socket_errno; - if (err == EWOULDBLOCK || err == EAGAIN) - return; - ERROR_LOG(Log::Net, "Error reading from socket: %d", err); - return; - } - - // Okay, move forward (might be by zero.) - valid_ += bytes; - write_ += bytes; - if (write_ >= BUFFER_SIZE) { - write_ -= BUFFER_SIZE; - } -} - void InputSink::AccountDrain(size_t bytes) { valid_ -= bytes; read_ += bytes; @@ -248,6 +258,10 @@ bool OutputSink::Push(const std::string &s) { bool OutputSink::Push(const char *buf, size_t bytes) { while (bytes > 0) { + if (hasError_) { + return false; + } + size_t pushed = PushAtMost(buf, bytes); buf += pushed; bytes -= pushed; @@ -342,13 +356,15 @@ bool OutputSink::Block() { bool OutputSink::Flush(bool allowBlock) { while (valid_ > 0) { + if (hasError_) { + return false; + } + size_t avail = std::min(BUFFER_SIZE - read_, valid_); int bytes = send(fd_, buf_ + read_, avail, MSG_NOSIGNAL); -#if !PPSSPP_PLATFORM(WINDOWS) if (bytes == -1 && (socket_errno == EAGAIN || socket_errno == EWOULDBLOCK)) bytes = 0; -#endif AccountDrain(bytes); if (bytes == 0) { @@ -368,19 +384,22 @@ void OutputSink::Discard() { read_ = 0; write_ = 0; valid_ = 0; + hasError_ = false; } void OutputSink::Drain() { + if (hasError_) { + return; + } + // Avoid small reads if possible. if (valid_ > PRESSURE) { // Let's just do contiguous valid. size_t avail = std::min(BUFFER_SIZE - read_, valid_); int bytes = send(fd_, buf_ + read_, avail, MSG_NOSIGNAL); -#if !PPSSPP_PLATFORM(WINDOWS) if (bytes == -1 && (socket_errno == EAGAIN || socket_errno == EWOULDBLOCK)) - bytes = 0; -#endif + bytes = 0; // don't report errors AccountDrain(bytes); } } @@ -399,6 +418,7 @@ void OutputSink::AccountDrain(int bytes) { if (err == EWOULDBLOCK || err == EAGAIN) return; ERROR_LOG(Log::IO, "Error writing to socket: %d", err); + hasError_ = true; return; } diff --git a/Common/Net/Sinks.h b/Common/Net/Sinks.h index 3f8d157252..09abd1ed51 100644 --- a/Common/Net/Sinks.h +++ b/Common/Net/Sinks.h @@ -27,6 +27,7 @@ public: bool Empty() const; bool TryFill(); + bool HasError() const { return hasError_; } size_t ValidAmount() const { return valid_; @@ -41,7 +42,6 @@ private: std::pair BufferParts() const; void Fill(); bool Block(); - void AccountFill(int bytes); void AccountDrain(size_t bytes); size_t FindNewline() const; @@ -57,6 +57,7 @@ private: size_t read_; size_t write_; size_t valid_; + bool hasError_ = false; }; class OutputSink { @@ -74,6 +75,7 @@ public: bool Empty() const; size_t BytesRemaining() const; + bool HasError() const { return hasError_; } private: void Drain(); @@ -89,6 +91,7 @@ private: size_t read_; size_t write_; size_t valid_; + bool hasError_ = false; }; } // namespace net diff --git a/Common/Net/SocketCompat.h b/Common/Net/SocketCompat.h index 3b52a51975..f62e4d795f 100644 --- a/Common/Net/SocketCompat.h +++ b/Common/Net/SocketCompat.h @@ -3,6 +3,9 @@ #include "ppsspp_config.h" #if PPSSPP_PLATFORM(WINDOWS) +#ifndef _CRT_NO_POSIX_ERROR_CODES +#define _CRT_NO_POSIX_ERROR_CODES +#endif #include "Common/CommonWindows.h" #include #include @@ -44,35 +47,18 @@ extern "C" struct hostent *gethostbyname(const char *name); // TODO: move this to some common set #if PPSSPP_PLATFORM(WINDOWS) -#undef ESHUTDOWN -#undef ECONNABORTED -#undef ECONNRESET -#undef ECONNREFUSED -#undef ENETUNREACH -#undef ENOTCONN +#ifdef ESHUTDOWN +#error This should not be defined. _CRT_NO_POSIX_ERROR_CODES not set in your project? +#endif #undef EBADF -#undef EAGAIN -#undef EINPROGRESS -#undef EISCONN -#undef EALREADY -#undef ETIMEDOUT -#undef EOPNOTSUPP -#undef ENOTSOCK -#undef EPROTONOSUPPORT -#undef ESOCKTNOSUPPORT -#undef EPFNOSUPPORT -#undef EAFNOSUPPORT -#undef EINTR #undef EACCES #undef EFAULT #undef EINVAL +#undef EINTR #undef ENOSPC -#undef EHOSTDOWN #undef EADDRINUSE #undef EADDRNOTAVAIL -#undef ENETUNREACH -#undef EHOSTUNREACH -#undef ENETDOWN +#undef EAGAIN #define socket_errno WSAGetLastError() #define ESHUTDOWN WSAESHUTDOWN #define ECONNABORTED WSAECONNABORTED @@ -81,7 +67,9 @@ extern "C" struct hostent *gethostbyname(const char *name); #define ENETUNREACH WSAENETUNREACH #define ENOTCONN WSAENOTCONN #define EBADF WSAEBADF -#define EAGAIN WSAEWOULDBLOCK +#define EAGAIN WSAEWOULDBLOCK // EAGAIN does not match WSAETRY_AGAIN, that's only for DNS. WSAEWOULDBLOCK is the closest match for EAGAIN on Windows. +#define ENOBUFS WSAENOBUFS +#define EWOULDBLOCK WSAEWOULDBLOCK #define EINPROGRESS WSAEWOULDBLOCK #define EISCONN WSAEISCONN #define EALREADY WSAEALREADY diff --git a/Core/Core.vcxproj b/Core/Core.vcxproj index d7f22469bd..e65dcf58b8 100644 --- a/Core/Core.vcxproj +++ b/Core/Core.vcxproj @@ -109,7 +109,7 @@ Level3 ..\ffmpeg\WindowsInclude;..\ext\libchdr\include;..\ffmpeg\Windows\x86\include;../common;..;../ext/glew;../ext/snappy;../ext/libpng17;../ext/zlib;../ext;../ext/zstd/lib - RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_32=1;_M_IX86=1;_DEBUG;_LIB;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_32=1;_M_IX86=1;_DEBUG;_LIB;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) StreamingSIMDExtensions2 Precise true @@ -135,7 +135,7 @@ Level3 ..\ffmpeg\WindowsInclude;..\ext\libchdr\include;..\ffmpeg\Windows\x86_64\include;../common;..;../ext/glew;../ext/snappy;../ext/libpng17;../ext/zlib;../ext;../ext/zstd/lib;../ext/zstd/lib - RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_M_X64=1;_DEBUG;_LIB;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_M_X64=1;_DEBUG;_LIB;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) NotSet Precise false @@ -162,7 +162,7 @@ Level3 ..\ffmpeg\WindowsInclude;..\ext\libchdr\include;..\ffmpeg\Windows\aarch64\include;../common;..;../ext/glew;../ext/snappy;../ext/libpng17;../ext/zlib;../ext;../ext/zstd/lib - _CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_DEBUG;_LIB;_UNICODE;UNICODE;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_DEBUG;_LIB;_UNICODE;UNICODE;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) NotSet Precise false @@ -195,7 +195,7 @@ false StreamingSIMDExtensions2 Precise - RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_32=1;_M_IX86=1;_LIB;NDEBUG;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_32=1;_M_IX86=1;_LIB;NDEBUG;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) Speed MultiThreaded true @@ -231,7 +231,7 @@ Speed false true - RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_M_X64=1;_LIB;NDEBUG;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_M_X64=1;_LIB;NDEBUG;_UNICODE;UNICODE;MINIUPNP_STATICLIB;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) MultiThreaded true ProgramDatabase @@ -265,7 +265,7 @@ Speed false true - USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_LIB;NDEBUG;_UNICODE;UNICODE;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USING_WIN_UI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;USE_FFMPEG;WITH_UPNP;WIN32;_ARCH_64=1;_LIB;NDEBUG;_UNICODE;UNICODE;ARMIPS_USE_STD_FILESYSTEM;%(PreprocessorDefinitions) MultiThreaded true ProgramDatabase diff --git a/Core/HLE/NetInetConstants.cpp b/Core/HLE/NetInetConstants.cpp index 0a8df79a44..e50eec398c 100644 --- a/Core/HLE/NetInetConstants.cpp +++ b/Core/HLE/NetInetConstants.cpp @@ -809,30 +809,16 @@ int convertInetErrnoHost2PSP(int error) { return ERROR_INET_ENOSPC; case EPIPE: return ERROR_INET_EPIPE; - case ENOMSG: - return ERROR_INET_ENOMSG; - case ENOLINK: - return ERROR_INET_ENOLINK; - case EPROTO: - return ERROR_INET_EPROTO; - case EBADMSG: - return ERROR_INET_EBADMSG; case EOPNOTSUPP: return ERROR_INET_EOPNOTSUPP; case EPFNOSUPPORT: return ERROR_INET_EPFNOSUPPORT; case ECONNRESET: return ERROR_INET_ECONNRESET; - case ENOBUFS: - return ERROR_INET_ENOBUFS; case EAFNOSUPPORT: return ERROR_INET_EAFNOSUPPORT; - case EPROTOTYPE: - return ERROR_INET_EPROTOTYPE; case ENOTSOCK: return ERROR_INET_ENOTSOCK; - case ENOPROTOOPT: - return ERROR_INET_ENOPROTOOPT; case ESHUTDOWN: return ERROR_INET_ESHUTDOWN; case ECONNREFUSED: @@ -853,16 +839,12 @@ int convertInetErrnoHost2PSP(int error) { return ERROR_INET_EHOSTUNREACH; case EALREADY: return ERROR_INET_EALREADY; - case EMSGSIZE: - return ERROR_INET_EMSGSIZE; case EPROTONOSUPPORT: return ERROR_INET_EPROTONOSUPPORT; case ESOCKTNOSUPPORT: return ERROR_INET_ESOCKTNOSUPPORT; case EADDRNOTAVAIL: return ERROR_INET_EADDRNOTAVAIL; - case ENETRESET: - return ERROR_INET_ENETRESET; case EISCONN: return ERROR_INET_EISCONN; case ENOTCONN: @@ -872,7 +854,27 @@ int convertInetErrnoHost2PSP(int error) { #if !defined(_WIN32) case EINPROGRESS: return ERROR_INET_EINPROGRESS; + case ENOMSG: + return ERROR_INET_ENOMSG; + case ENOLINK: + return ERROR_INET_ENOLINK; + case EPROTO: + return ERROR_INET_EPROTO; + case EBADMSG: + return ERROR_INET_EBADMSG; + case ENOBUFS: + return ERROR_INET_ENOBUFS; + case EPROTOTYPE: + return ERROR_INET_EPROTOTYPE; + case ENOPROTOOPT: + return ERROR_INET_ENOPROTOOPT; + case EMSGSIZE: + return ERROR_INET_EMSGSIZE; + case ENETRESET: + return ERROR_INET_ENETRESET; #endif + default: + break; } if (error != 0) return hleLogError(Log::sceNet, error, "Unknown Host Error Number (%d)", error); diff --git a/UI/UI.vcxproj b/UI/UI.vcxproj index 13237c4f1c..fe3544d615 100644 --- a/UI/UI.vcxproj +++ b/UI/UI.vcxproj @@ -234,7 +234,7 @@ Level3 - RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_32=1;WIN32;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_32=1;WIN32;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ..\ffmpeg\WindowsInclude;..\ffmpeg\Windows\x86_64\include;../common;..;../ext/native;../ext/glew;../ext/snappy;../ext/zlib;../ext true false @@ -254,7 +254,7 @@ Level3 - RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ..\ffmpeg\WindowsInclude;..\ffmpeg\Windows\x86_64\include;../common;..;../ext/native;../ext/glew;../ext/snappy;../ext/zlib;../ext true false @@ -275,7 +275,7 @@ Level3 - _CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;_DEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ..\ffmpeg\WindowsInclude;..\ffmpeg\Windows\aarch64\include;../common;..;../ext/native;../ext/glew;../ext/snappy;../ext/zlib;../ext true false @@ -299,7 +299,7 @@ MaxSpeed true true - RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_32=1;WIN32;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_32=1;WIN32;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ..\ffmpeg\WindowsInclude;..\ffmpeg\Windows\x86_64\include;../common;..;../ext/native;../ext/glew;../ext/snappy;../ext/zlib;../ext false Size @@ -325,7 +325,7 @@ MaxSpeed true true - RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ..\ffmpeg\WindowsInclude;..\ffmpeg\Windows\x86_64\include;../common;..;../ext/native;../ext/glew;../ext/snappy;../ext/zlib;../ext false true @@ -352,7 +352,7 @@ MaxSpeed true true - USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;_ARCH_64=1;WIN32;NDEBUG;_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions) ..\ffmpeg\WindowsInclude;..\ffmpeg\Windows\aarch64\include;../common;..;../ext/native;../ext/glew;../ext/snappy;../ext/zlib;../ext false true diff --git a/Windows/PPSSPP.vcxproj b/Windows/PPSSPP.vcxproj index 133ff62ba2..889c358582 100644 --- a/Windows/PPSSPP.vcxproj +++ b/Windows/PPSSPP.vcxproj @@ -177,7 +177,7 @@ - USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_ARCH_32=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_ARCH_32=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) false Sync Use @@ -216,7 +216,7 @@ false - USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;_CRTDBG_MAP_ALLOC;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) Sync Use Level3 @@ -250,7 +250,7 @@ false - USE_FFMPEG;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USE_FFMPEG;_CRTDBG_MAP_ALLOC;USING_WIN_UI;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) Sync Use Level3 @@ -285,7 +285,7 @@ AnySuitable true Speed - USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_ARCH_32=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_ARCH_32=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) true Sync MultiThreaded @@ -334,7 +334,7 @@ true Speed false - USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USE_FFMPEG;RC_CLIENT_SUPPORTS_RAINTEGRATION;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) true Sync MultiThreaded @@ -376,7 +376,7 @@ true Speed false - USE_FFMPEG;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) + _CRT_NO_POSIX_ERROR_CODES;USE_FFMPEG;USING_WIN_UI;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_ARCH_64=1;_WINDOWS;_UNICODE;UNICODE;%(PreprocessorDefinitions) true Sync MultiThreaded