vcpkg/ports/curl/0002_fix_uwp.patch

93 lines
3.0 KiB
Diff
Raw Normal View History

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7b73b98..72f6171 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -882,7 +882,9 @@ check_symbol_exists(setsockopt "${CURL_INCLUDES}" HAVE_SETSOCKOPT)
check_function_exists(mach_absolute_time HAVE_MACH_ABSOLUTE_TIME)
2017-08-11 03:43:50 +08:00
# symbol exists in win32, but function does not.
-if(WIN32)
+if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ add_definitions(-D_WIN32_WINNT=0x0A00 -DHAVE_STRUCT_POLLFD -D_WINSOCK_DEPRECATED_NO_WARNINGS)
+elseif(WIN32)
2017-08-11 03:43:50 +08:00
if(ENABLE_INET_PTON)
check_function_exists(inet_pton HAVE_INET_PTON)
# _WIN32_WINNT_VISTA (0x0600)
diff --git a/lib/curl_gethostname.c b/lib/curl_gethostname.c
2017-08-11 03:43:50 +08:00
index 8337c72..41867b2 100644
--- a/lib/curl_gethostname.c
+++ b/lib/curl_gethostname.c
@@ -21,6 +21,7 @@
***************************************************************************/
#include "curl_setup.h"
+#include "curl/curl.h"
#include "curl_gethostname.h"
2017-08-11 03:43:50 +08:00
@@ -64,9 +65,10 @@ int Curl_gethostname(char *name, GETHOSTNAME_TYPE_ARG2 namelen)
#ifdef DEBUGBUILD
/* Override host name when environment variable CURL_GETHOSTNAME is set */
- const char *force_hostname = getenv("CURL_GETHOSTNAME");
+ char *force_hostname = curl_getenv("CURL_GETHOSTNAME");
if(force_hostname) {
strncpy(name, force_hostname, namelen);
+ free(force_hostname);
err = 0;
}
else {
diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c
index e896276..268f0ea 100644
--- a/lib/curl_ntlm_core.c
+++ b/lib/curl_ntlm_core.c
@@ -743,9 +743,12 @@ CURLcode Curl_ntlm_core_mk_ntlmv2_resp(unsigned char *ntlmv2hash,
/* Calculate the timestamp */
#ifdef DEBUGBUILD
- char *force_timestamp = getenv("CURL_FORCETIME");
- if(force_timestamp)
+ char *force_timestamp = curl_getenv("CURL_FORCETIME");
+ if (force_timestamp)
+ {
tw = CURL_OFF_T_C(11644473600) * 10000000;
+ free(force_timestamp);
+ }
else
#endif
tw = ((curl_off_t)time(NULL) + CURL_OFF_T_C(11644473600)) * 10000000;
diff --git a/lib/ftp.c b/lib/ftp.c
index 8042edf..3442df7 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -4260,7 +4260,7 @@ CURLcode ftp_parse_url_path(struct connectdata *conn)
2017-08-11 03:43:50 +08:00
/* prevpath is "raw" so we convert the input path before we compare the
strings */
size_t dlen;
- char *path;
+ char *path = NULL;
CURLcode result =
Curl_urldecode(conn->data, data->state.path, 0, &path, &dlen, TRUE);
2017-08-11 03:43:50 +08:00
if(result) {
diff --git a/lib/rand.c b/lib/rand.c
index 2670af9..0d18d37 100644
2017-08-11 03:43:50 +08:00
--- a/lib/rand.c
+++ b/lib/rand.c
@@ -44,7 +44,7 @@ static CURLcode randit(struct Curl_easy *data, unsigned int *rnd)
static bool seeded = FALSE;
#ifdef CURLDEBUG
- char *force_entropy = getenv("CURL_ENTROPY");
+ char *force_entropy = curl_getenv("CURL_ENTROPY");
if(force_entropy) {
if(!seeded) {
2017-08-11 03:43:50 +08:00
unsigned int seed = 0;
@@ -58,6 +58,7 @@ static CURLcode randit(struct Curl_easy *data, unsigned int *rnd)
else
randseed++;
2017-08-11 03:43:50 +08:00
*rnd = randseed;
+ free(force_entropy);
2017-08-11 03:43:50 +08:00
return CURLE_OK;
}
#endif