summaryrefslogtreecommitdiff
path: root/Source/Core/Common/HttpRequest.cpp
diff options
context:
space:
mode:
authorspycrab <spycrab@users.noreply.github.com>2019-04-06 12:36:29 +0200
committerGitHub <noreply@github.com>2019-04-06 12:36:29 +0200
commit23986d48f731fd92e8989b32988f636118c9d2ba (patch)
tree85266765d09020179b1cbcc358465a08289729ad /Source/Core/Common/HttpRequest.cpp
parenta7ee00ae2527eafcda1c530a5d45c3350593d839 (diff)
parent094bf0d2ffb476d177d68ea496898615055963c1 (diff)
Merge pull request #7945 from spycrab/np_browser
Qt/NetPlay: Implement session/server browser
Diffstat (limited to 'Source/Core/Common/HttpRequest.cpp')
-rw-r--r--Source/Core/Common/HttpRequest.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/Source/Core/Common/HttpRequest.cpp b/Source/Core/Common/HttpRequest.cpp
index cee9d7434c..ab3fd11c34 100644
--- a/Source/Core/Common/HttpRequest.cpp
+++ b/Source/Core/Common/HttpRequest.cpp
@@ -36,6 +36,7 @@ public:
static int CurlProgressCallback(Impl* impl, double dlnow, double dltotal, double ulnow,
double ultotal);
+ std::string EscapeComponent(const std::string& string);
private:
static std::mutex s_curl_was_inited_mutex;
@@ -74,6 +75,11 @@ void HttpRequest::FollowRedirects(long max)
m_impl->FollowRedirects(max);
}
+std::string HttpRequest::EscapeComponent(const std::string& string)
+{
+ return m_impl->EscapeComponent(string);
+}
+
HttpRequest::Response HttpRequest::Get(const std::string& url, const Headers& headers)
{
return m_impl->Fetch(url, Impl::Method::GET, headers, nullptr, 0);
@@ -159,6 +165,11 @@ void HttpRequest::Impl::FollowRedirects(long max)
curl_easy_setopt(m_curl.get(), CURLOPT_MAXREDIRS, max);
}
+std::string HttpRequest::Impl::EscapeComponent(const std::string& string)
+{
+ return curl_easy_escape(m_curl.get(), string.c_str(), static_cast<int>(string.size()));
+}
+
static size_t CurlWriteCallback(char* data, size_t size, size_t nmemb, void* userdata)
{
auto* buffer = static_cast<std::vector<u8>*>(userdata);