X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/42ba3fa1ec004acbddf5266559bd76428d904206..6e71ec6fcdcaa926c98fa58cd4af38e42556df15:/methods/https.cc diff --git a/methods/https.cc b/methods/https.cc index fc439bef8..bbdbd8fa9 100644 --- a/methods/https.cc +++ b/methods/https.cc @@ -13,7 +13,6 @@ #include #include -#include #include #include #include @@ -389,7 +388,7 @@ bool HttpsMethod::Fetch(FetchItem *Itm) std::string Buf; strprintf(Buf, "Range: bytes=%lli-", (long long) SBuf.st_size); headers = curl_slist_append(headers, Buf.c_str()); - strprintf(Buf, "If-Range: %s", TimeRFC1123(SBuf.st_mtime).c_str()); + strprintf(Buf, "If-Range: %s", TimeRFC1123(SBuf.st_mtime, false).c_str()); headers = curl_slist_append(headers, Buf.c_str()); } else if(Itm->LastModified > 0) @@ -437,7 +436,13 @@ bool HttpsMethod::Fetch(FetchItem *Itm) break; } #pragma GCC diagnostic pop - return _error->Error("%s", curl_errorstr); + // only take curls technical errors if we haven't our own + // (e.g. for the maximum size limit we have and curls can be confusing) + if (_error->PendingError() == false) + _error->Error("%s", curl_errorstr); + else + _error->Warning("curl: %s", curl_errorstr); + return false; } // server says file not modified @@ -528,11 +533,6 @@ std::unique_ptr HttpsMethod::CreateServerState(URI const &uri)/*{{{ int main() { - setlocale(LC_ALL, ""); - - HttpsMethod Mth; - curl_global_init(CURL_GLOBAL_SSL) ; - - return Mth.Run(); + return HttpsMethod().Run(); }