diff --git a/lib/libimhex/include/hex/helpers/http_requests.hpp b/lib/libimhex/include/hex/helpers/http_requests.hpp index 7e707dee6..63eac6dcc 100644 --- a/lib/libimhex/include/hex/helpers/http_requests.hpp +++ b/lib/libimhex/include/hex/helpers/http_requests.hpp @@ -328,8 +328,8 @@ namespace hex { std::map m_headers; u32 m_timeout = 1000; - float m_progress = 0.0F; - bool m_canceled = false; + std::atomic m_progress = 0.0F; + std::atomic m_canceled = false; [[maybe_unused]] std::unique_ptr m_caCert; static std::string s_caCertData, s_proxyUrl; diff --git a/lib/libimhex/source/helpers/http_requests.cpp b/lib/libimhex/source/helpers/http_requests.cpp index 21c01e1a8..8ff33fae7 100644 --- a/lib/libimhex/source/helpers/http_requests.cpp +++ b/lib/libimhex/source/helpers/http_requests.cpp @@ -16,6 +16,7 @@ namespace hex { curl_easy_setopt(this->m_curl, CURLOPT_TIMEOUT_MS, 0L); curl_easy_setopt(this->m_curl, CURLOPT_CONNECTTIMEOUT_MS, this->m_timeout); curl_easy_setopt(this->m_curl, CURLOPT_NOSIGNAL, 1L); + curl_easy_setopt(this->m_curl, CURLOPT_NOPROGRESS, 0L); curl_easy_setopt(this->m_curl, CURLOPT_XFERINFODATA, this); curl_easy_setopt(this->m_curl, CURLOPT_XFERINFOFUNCTION, progressCallback); curl_easy_setopt(this->m_curl, CURLOPT_PROXY, s_proxyUrl.c_str());