diff --git a/ports/cpprestsdk/portfile.cmake b/ports/cpprestsdk/portfile.cmake index efa1c7f26e636e..d9d1c0d1659dd9 100644 --- a/ports/cpprestsdk/portfile.cmake +++ b/ports/cpprestsdk/portfile.cmake @@ -11,6 +11,7 @@ vcpkg_from_github( fix-clang-dllimport.patch # workaround for https://github.com/microsoft/cpprestsdk/issues/1710 fix-asio-error.patch remove-stdext-checked-array-iterator-1836.patch # https://github.com/microsoft/cpprestsdk/pull/1836 + remove-openprot-1844.diff # https://github.com/microsoft/cpprestsdk/pull/1844 ) vcpkg_check_features( diff --git a/ports/cpprestsdk/remove-openprot-1844.diff b/ports/cpprestsdk/remove-openprot-1844.diff new file mode 100644 index 00000000000000..292adc61d04d0c --- /dev/null +++ b/ports/cpprestsdk/remove-openprot-1844.diff @@ -0,0 +1,70 @@ +diff --git a/Release/include/cpprest/filestream.h b/Release/include/cpprest/filestream.h +index 1e4a0f278e2b6ac162c9d191a6d9912eeac8e575..511519a7de820d3308f364557a135d23caf03dd1 100644 +--- a/Release/include/cpprest/filestream.h ++++ b/Release/include/cpprest/filestream.h +@@ -715,7 +715,7 @@ class basic_file_buffer : public details::streambuf_state_manager<_CharType> + const utility::string_t& _Filename, + std::ios_base::openmode _Mode = std::ios_base::out, + #ifdef _WIN32 +- int _Prot = (int)std::ios_base::_Openprot ++ int _Prot = _SH_DENYNO + #else + int _Prot = 0 // unsupported on Linux, for now + #endif +@@ -1012,7 +1012,7 @@ class file_stream + static pplx::task> open_istream(const utility::string_t& file_name, + std::ios_base::openmode mode = std::ios_base::in, + #ifdef _WIN32 +- int prot = (int)std::ios_base::_Openprot ++ int prot = _SH_DENYNO + #else + int prot = 0 + #endif +@@ -1037,7 +1037,7 @@ class file_stream + static pplx::task> open_ostream(const utility::string_t& file_name, + std::ios_base::openmode mode = std::ios_base::out, + #ifdef _WIN32 +- int prot = (int)std::ios_base::_Openprot ++ int prot = _SH_DENYNO + #else + int prot = 0 + #endif +diff --git a/Release/tests/functional/streams/fstreambuf_tests.cpp b/Release/tests/functional/streams/fstreambuf_tests.cpp +index 190eb66b0cbf40b3ac1bc207ed5804ab80f20060..bd63633091c24ee99bfd8fcc6c01810759431ecb 100644 +--- a/Release/tests/functional/streams/fstreambuf_tests.cpp ++++ b/Release/tests/functional/streams/fstreambuf_tests.cpp +@@ -19,7 +19,7 @@ using namespace Windows::Storage; + #endif + + #ifdef _WIN32 +-#define DEFAULT_PROT (int)std::ios_base::_Openprot ++#define DEFAULT_PROT _SH_DENYNO + #else + #define DEFAULT_PROT 0 + #define _SH_DENYRW 0x20 +diff --git a/Release/tests/functional/streams/istream_tests.cpp b/Release/tests/functional/streams/istream_tests.cpp +index 32cb545aa266cea0217a1acaac1e99aed8ba219e..9feed549ead29426b3300e376295266386055bcd 100644 +--- a/Release/tests/functional/streams/istream_tests.cpp ++++ b/Release/tests/functional/streams/istream_tests.cpp +@@ -22,7 +22,7 @@ using namespace Windows::Storage; + #endif + + #ifdef _WIN32 +-#define DEFAULT_PROT (int)std::ios_base::_Openprot ++#define DEFAULT_PROT _SH_DENYNO + #else + #define DEFAULT_PROT 0 + #endif +diff --git a/Release/tests/functional/streams/stdstream_tests.cpp b/Release/tests/functional/streams/stdstream_tests.cpp +index 34b9b3af1291b8fd53f65ea1eac7babdfffdb74e..4072224e05b79ba3cde46fd14348058b44496502 100644 +--- a/Release/tests/functional/streams/stdstream_tests.cpp ++++ b/Release/tests/functional/streams/stdstream_tests.cpp +@@ -23,7 +23,7 @@ using namespace Windows::Storage; + #endif + + #ifdef _WIN32 +-#define DEFAULT_PROT (int)std::ios_base::_Openprot ++#define DEFAULT_PROT _SH_DENYNO + #else + #define DEFAULT_PROT 0 + #endif diff --git a/ports/cpprestsdk/vcpkg.json b/ports/cpprestsdk/vcpkg.json index 0f76b048c1a896..26d3a9e84dd30b 100644 --- a/ports/cpprestsdk/vcpkg.json +++ b/ports/cpprestsdk/vcpkg.json @@ -1,7 +1,7 @@ { "name": "cpprestsdk", "version": "2.10.19", - "port-version": 4, + "port-version": 5, "description": [ "C++11 JSON, REST, and OAuth library", "The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services." diff --git a/versions/baseline.json b/versions/baseline.json index 716f7012d408da..6e01b2eaf4035c 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2114,7 +2114,7 @@ }, "cpprestsdk": { "baseline": "2.10.19", - "port-version": 4 + "port-version": 5 }, "cppslippi": { "baseline": "1.4.3.18", diff --git a/versions/c-/cpprestsdk.json b/versions/c-/cpprestsdk.json index e5ca4739f66a15..f24e525682cb39 100644 --- a/versions/c-/cpprestsdk.json +++ b/versions/c-/cpprestsdk.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "2cb69b47ff909df5dd29678ec6cde55feefe6d95", + "version": "2.10.19", + "port-version": 5 + }, { "git-tree": "9e19a9c742d13629f5a87f99f9fbe5f595ddfc71", "version": "2.10.19",