return realsize;
}
-static char *fetch_url(const char *url)
+static void init()
{
- struct ucontent *content = malloc(sizeof(struct ucontent));
- char *result;
- long code;
- int retries;
-
- log_debug(_("fetch_url(): %s"), url);
-
if (!curl) {
log_debug(_("initializing CURL"));
curl_global_init(CURL_GLOBAL_ALL);
if (!curl)
exit(EXIT_FAILURE);
+}
+
+static char *fetch_url(const char *url)
+{
+ struct ucontent *content = malloc(sizeof(struct ucontent));
+ char *result;
+ long code;
+ int retries;
+
+ log_debug(_("fetch_url(): %s"), url);
+
+ init();
result = NULL;
case 502:
case 503:
case 504:
- if (retries) {
- log_err(_("Fetch failed with code %ld "
- "for URL %s"),
- code,
- url);
+ log_err(_("Fetch failed with code %ld for URL %s"),
+ code,
+ url);
+ if (retries) {
log_debug(_("Wait 5s before retry"));
sleep(5);
retries--;
goto retrieve;
}
+
+ break;
default:
- log_err(_("Fetch failed: %ld"), code);
+ log_err(_("Fetch failed with code %ld for URL %s"),
+ code,
+ url);
}
}