From efa1179a7d55be713940cf82eaadb3d7379a7942 Mon Sep 17 00:00:00 2001 From: fritsch Date: Sat, 23 Jul 2016 21:34:05 +0200 Subject: [PATCH 1/2] Curl: Support libcurl version 7.5.0 --- xbmc/filesystem/CurlFile.h | 6 ++++++ xbmc/filesystem/DllLibCurl.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/xbmc/filesystem/CurlFile.h b/xbmc/filesystem/CurlFile.h index b4f5046..81a5ae5 100644 --- a/xbmc/filesystem/CurlFile.h +++ b/xbmc/filesystem/CurlFile.h @@ -24,11 +24,17 @@ #include #include #include "utils/HttpHeader.h" +#include namespace XCURL { +#if LIBCURL_VERSION_NUM >= 0x073200 + typedef struct Curl_easy CURL_HANDLE; + typedef struct Curl_multi CURLM; +#else typedef void CURL_HANDLE; typedef void CURLM; +#endif struct curl_slist; } diff --git a/xbmc/filesystem/DllLibCurl.h b/xbmc/filesystem/DllLibCurl.h index db97f92..1bdaae1 100644 --- a/xbmc/filesystem/DllLibCurl.h +++ b/xbmc/filesystem/DllLibCurl.h @@ -52,7 +52,7 @@ namespace XCURL virtual CURLMcode multi_fdset(CURLM *multi_handle, fd_set *read_fd_set, fd_set *write_fd_set, fd_set *exc_fd_set, int *max_fd)=0; virtual CURLMcode multi_timeout(CURLM *multi_handle, long *timeout)=0; virtual CURLMsg* multi_info_read(CURLM *multi_handle, int *msgs_in_queue)=0; - virtual void multi_cleanup(CURL_HANDLE * handle )=0; + virtual void multi_cleanup(CURLM * handle )=0; virtual struct curl_slist* slist_append(struct curl_slist *, const char *)=0; virtual void slist_free_all(struct curl_slist *)=0; }; From 9c6dd05394c7f55c046f285b124b0caa46e66ee4 Mon Sep 17 00:00:00 2001 From: fritsch Date: Sun, 24 Jul 2016 20:24:07 +0200 Subject: [PATCH 2/2] Curl: Adjust multi_cleanup method which returns CURLMcode --- xbmc/filesystem/DllLibCurl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xbmc/filesystem/DllLibCurl.h b/xbmc/filesystem/DllLibCurl.h index 1bdaae1..9e78a91 100644 --- a/xbmc/filesystem/DllLibCurl.h +++ b/xbmc/filesystem/DllLibCurl.h @@ -52,7 +52,7 @@ namespace XCURL virtual CURLMcode multi_fdset(CURLM *multi_handle, fd_set *read_fd_set, fd_set *write_fd_set, fd_set *exc_fd_set, int *max_fd)=0; virtual CURLMcode multi_timeout(CURLM *multi_handle, long *timeout)=0; virtual CURLMsg* multi_info_read(CURLM *multi_handle, int *msgs_in_queue)=0; - virtual void multi_cleanup(CURLM * handle )=0; + virtual CURLMcode multi_cleanup(CURLM * handle )=0; virtual struct curl_slist* slist_append(struct curl_slist *, const char *)=0; virtual void slist_free_all(struct curl_slist *)=0; }; @@ -77,7 +77,7 @@ namespace XCURL DEFINE_METHOD5(CURLMcode, multi_fdset, (CURLM *p1, fd_set *p2, fd_set *p3, fd_set *p4, int *p5)) DEFINE_METHOD2(CURLMcode, multi_timeout, (CURLM *p1, long *p2)) DEFINE_METHOD2(CURLMsg*, multi_info_read, (CURLM *p1, int *p2)) - DEFINE_METHOD1(void, multi_cleanup, (CURLM *p1)) + DEFINE_METHOD1(CURLMcode, multi_cleanup, (CURLM *p1)) DEFINE_METHOD2(struct curl_slist*, slist_append, (struct curl_slist * p1, const char * p2)) DEFINE_METHOD1(void, slist_free_all, (struct curl_slist * p1)) DEFINE_METHOD1(const char *, easy_strerror, (CURLcode p1))