From ca5eac0c63b10a961d8350040a0eb683a4ce52b6 Mon Sep 17 00:00:00 2001 From: spycrab Date: Sat, 6 Apr 2019 13:23:55 +0200 Subject: [PATCH] Common/HttpRequest: Fix EscapeComponent leaking memory --- Source/Core/Common/HttpRequest.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Source/Core/Common/HttpRequest.cpp b/Source/Core/Common/HttpRequest.cpp index ab3fd11c34..88f6a126fb 100644 --- a/Source/Core/Common/HttpRequest.cpp +++ b/Source/Core/Common/HttpRequest.cpp @@ -167,7 +167,11 @@ void HttpRequest::Impl::FollowRedirects(long max) std::string HttpRequest::Impl::EscapeComponent(const std::string& string) { - return curl_easy_escape(m_curl.get(), string.c_str(), static_cast(string.size())); + char* escaped = curl_easy_escape(m_curl.get(), string.c_str(), static_cast(string.size())); + std::string escaped_str(escaped); + curl_free(escaped); + + return escaped_str; } static size_t CurlWriteCallback(char* data, size_t size, size_t nmemb, void* userdata)