X-Git-Url: http://sjero.net/git/?p=wget;a=blobdiff_plain;f=src%2Fretr.c;h=73947658c2d73b10b975ce589d39d1a2c2bb7401;hp=25c5dcf4440e11da851db0e3101d48ead723aa8b;hb=706871e92e4c0bbca53972451921781cc7afbb8b;hpb=e219e587b360fd81b3b19f281b93ad4491ec1a9e diff --git a/src/retr.c b/src/retr.c index 25c5dcf4..73947658 100644 --- a/src/retr.c +++ b/src/retr.c @@ -207,9 +207,10 @@ fd_read_body (int fd, FILE *out, wgint toread, wgint startpos, wgint *qtyread, wgint *qtywritten, double *elapsed, int flags) { int ret = 0; - - int dlbufsize = BUFSIZ; - char *dlbuf = xmalloc (BUFSIZ); +#undef max +#define max(a,b) ((a) > (b) ? (a) : (b)) + int dlbufsize = max (BUFSIZ, 8 * 1024); + char *dlbuf = xmalloc (dlbufsize); struct ptimer *timer = NULL; double last_successful_read_tm = 0; @@ -878,7 +879,7 @@ retrieve_url (struct url * orig_parsed, const char *origurl, char **file, { register_download (u->url, local_file); - if (redirection_count && 0 != strcmp (origurl, u->url)) + if (!opt.spider && redirection_count && 0 != strcmp (origurl, u->url)) register_redirection (origurl, u->url); if (*dt & TEXTHTML) @@ -947,8 +948,7 @@ retrieve_from_file (const char *file, bool html, int *count) { int dt,url_err; uerr_t status; - struct url * url_parsed = url_parse(url, &url_err, iri, true); - + struct url *url_parsed = url_parse (url, &url_err, iri, true); if (!url_parsed) { char *error = url_error (url, url_err); @@ -1006,9 +1006,7 @@ retrieve_from_file (const char *file, bool html, int *count) break; } - /* Need to reparse the url, since it didn't have iri information. */ - if (opt.enable_iri) - parsed_url = url_parse (cur_url->url->url, NULL, tmpiri, true); + parsed_url = url_parse (cur_url->url->url, NULL, tmpiri, true); if ((opt.recursive || opt.page_requisites) && (cur_url->url->scheme != SCHEME_FTP || getproxy (cur_url->url)))