replay/util: initialize curl at startup (#23314)

old-commit-hash: 21fc9d537548f7694177f8bb3a1e31cb94995624
This commit is contained in:
Dean Lee
2021-12-28 05:22:42 +08:00
committed by GitHub
parent 446e59d10f
commit 1860d9c18c
+3 -4
View File
@@ -17,13 +17,14 @@
namespace {
static std::atomic<bool> enable_http_logging = false;
struct CURLGlobalInitializer {
CURLGlobalInitializer() { curl_global_init(CURL_GLOBAL_DEFAULT); }
~CURLGlobalInitializer() { curl_global_cleanup(); }
};
static CURLGlobalInitializer curl_initializer;
static std::atomic<bool> enable_http_logging = false;
template <class T>
struct MultiPartWriter {
T *buf;
@@ -98,8 +99,6 @@ void enableHttpLogging(bool enable) {
template <class T>
bool httpDownload(const std::string &url, T &buf, size_t chunk_size, size_t content_length, std::atomic<bool> *abort) {
static CURLGlobalInitializer curl_initializer;
int parts = 1;
if (chunk_size > 0 && content_length > 10 * 1024 * 1024) {
parts = std::nearbyint(content_length / (float)chunk_size);