diff --git a/src/link.c b/src/link.c index ea589f8..8317a5c 100644 --- a/src/link.c +++ b/src/link.c @@ -530,7 +530,7 @@ LinkTable *LinkTable_new(const char *url) * start downloading the base URL */ TransferStruct ts = Link_download_full(linktbl->links[0]); - if (ts.size == 0) { + if (ts.curr_size == 0) { LinkTable_free(linktbl); return NULL; } @@ -833,7 +833,7 @@ TransferStruct Link_download_full(Link *link) CURL *curl = Link_to_curl(link); TransferStruct ts; - ts.size = 0; + ts.curr_size = 0; ts.data = NULL; ts.type = DATA; ts.transferring = 1; @@ -865,7 +865,7 @@ TransferStruct Link_download_full(Link *link) } else if (http_resp != HTTP_OK) { lprintf(warning, "cannot retrieve URL: %s, HTTP %ld\n", url, http_resp); - ts.size = 0; + ts.curr_size = 0; FREE(ts.data); curl_easy_cleanup(curl); return ts; @@ -957,17 +957,16 @@ range requests\n"); return recv; } -long -Link_download(Link *link, char *output_buf, size_t req_size, off_t offset) +long Link_download(Link *link, char *output_buf, size_t req_size, off_t offset) { TransferStruct ts; - ts.size = 0; + ts.curr_size = 0; ts.data = NULL; ts.type = DATA; ts.transferring = 1; TransferStruct header; - header.size = 0; + header.curr_size = 0; header.data = NULL; CURL *curl = Link_download_curl_setup(link, req_size, offset, &header, &ts); @@ -989,9 +988,8 @@ Link_download(Link *link, char *output_buf, size_t req_size, off_t offset) return recv; } -long -path_download(const char *path, char *output_buf, size_t req_size, - off_t offset) +long path_download(const char *path, char *output_buf, size_t req_size, + off_t offset) { if (!path) { lprintf(fatal, "NULL path supplied\n"); diff --git a/src/link.h b/src/link.h index 0666ea2..21ee9dc 100644 --- a/src/link.h +++ b/src/link.h @@ -41,7 +41,7 @@ struct TransferStruct { /** \brief The array to store the data */ char *data; /** \brief The current size of the array */ - size_t size; + size_t curr_size; /** \brief The minium requested size */ size_t min_req_size; /** \brief The type of transfer being done */ diff --git a/src/network.c b/src/network.c index 2120962..d4960ed 100644 --- a/src/network.c +++ b/src/network.c @@ -317,24 +317,24 @@ void transfer_nonblocking(CURL *curl) } } -size_t write_memory_callback(void *contents, size_t size, size_t nmemb, +size_t write_memory_callback(void *recv_data, size_t size, size_t nmemb, void *userp) { - size_t realsize = size * nmemb; - TransferStruct *mem = (TransferStruct *) userp; + size_t recv_size = size * nmemb; + TransferStruct *ts = (TransferStruct *) userp; - mem->data = realloc(mem->data, mem->size + realsize + 1); - if (!mem->data) { + ts->data = realloc(ts->data, ts->curr_size + recv_size + 1); + if (!ts->data) { /* * out of memory! */ lprintf(fatal, "realloc failure!\n"); } - memmove(&mem->data[mem->size], contents, realsize); - mem->size += realsize; - mem->data[mem->size] = 0; - return realsize; + memmove(&ts->data[ts->curr_size], recv_data, recv_size); + ts->curr_size += recv_size; + ts->data[ts->curr_size] = '\0'; + return recv_size; } int HTTP_temp_failure(HTTPResponseCode http_resp) diff --git a/src/sonic.c b/src/sonic.c index 7ff438a..e62bcb9 100644 --- a/src/sonic.c +++ b/src/sonic.c @@ -332,7 +332,7 @@ static LinkTable *sonic_url_to_LinkTable(const char *url, * start downloading the base URL */ TransferStruct xml = Link_download_full(linktbl->links[0]); - if (xml.size == 0) { + if (xml.curr_size == 0) { LinkTable_free(linktbl); return NULL; } @@ -342,7 +342,7 @@ static LinkTable *sonic_url_to_LinkTable(const char *url, XML_SetStartElementHandler(parser, handler); - if (XML_Parse(parser, xml.data, xml.size, 1) == XML_STATUS_ERROR) { + if (XML_Parse(parser, xml.data, xml.curr_size, 1) == XML_STATUS_ERROR) { lprintf(error, "Parse error at line %lu: %s\n", XML_GetCurrentLineNumber(parser),