, _status (-1)
, _result (-1)
{
- memset (error_buffer, 0, sizeof (*error_buffer));
+ error_buffer[0] = 0;
_curl = curl_easy_init ();
if (!_curl) {
}
char*
-HttpGet::get (const char* url)
+HttpGet::get (const char* url, bool with_error_logging)
{
#ifdef ARDOURCURLDEBUG
- std::cerr << "HttpGet::get() ---- new request ---"<< std::endl;
+ std::cerr << "HttpGet::get() ---- new request ---"<< std::endl;
#endif
_status = _result = -1;
if (!_curl || !url) {
- PBD::error << "HttpGet::get() not initialized (or NULL url)"<< endmsg;
+ if (with_error_logging) {
+ PBD::error << "HttpGet::get() not initialized (or NULL url)"<< endmsg;
+ }
#ifdef ARDOURCURLDEBUG
std::cerr << "HttpGet::get() not initialized (or NULL url)"<< std::endl;
#endif
}
if (strncmp ("http://", url, 7) && strncmp ("https://", url, 8)) {
- PBD::error << "HttpGet::get() not a http[s] URL"<< endmsg;
+ if (with_error_logging) {
+ PBD::error << "HttpGet::get() not a http[s] URL"<< endmsg;
+ }
#ifdef ARDOURCURLDEBUG
std::cerr << "HttpGet::get() not a http[s] URL"<< std::endl;
#endif
free (mem.data);
} // otherwise caller is expected to have free()d or re-used it.
- memset (error_buffer, 0, sizeof (*error_buffer));
+ error_buffer[0] = 0;
mem.data = NULL;
mem.size = 0;
CCERR ("CURLINFO_RESPONSE_CODE,");
if (_result) {
- PBD::error << string_compose (_("HTTP request failed: (%1) %2"), _result, error_buffer) << endmsg;
+ if (with_error_logging) {
+ PBD::error << string_compose (_("HTTP request failed: (%1) %2"), _result, error_buffer) << endmsg;
+ }
#ifdef ARDOURCURLDEBUG
std::cerr << string_compose (_("HTTP request failed: (%1) %2"), _result, error_buffer) << std::endl;
#endif
return NULL;
}
if (_status != 200) {
+ if (with_error_logging) {
PBD::error << string_compose (_("HTTP request status: %1"), _status) << endmsg;
+ }
#ifdef ARDOURCURLDEBUG
std::cerr << string_compose (_("HTTP request status: %1"), _status) << std::endl;
#endif
}
char*
-ArdourCurl::http_get (const char* url, int* status) {
+ArdourCurl::http_get (const char* url, int* status, bool with_error_logging) {
HttpGet h (true);
- char* rv = h.get (url);
+ char* rv = h.get (url, with_error_logging);
if (status) {
*status = h.status ();
}
}
std::string
-ArdourCurl::http_get (const std::string& url) {
- return HttpGet (false).get (url);
+ArdourCurl::http_get (const std::string& url, bool with_error_logging) {
+ return HttpGet (false).get (url, with_error_logging);
}