From: Micah Cowan Date: Thu, 13 Nov 2008 08:59:53 +0000 (-0800) Subject: Don't download content just to ignore it. X-Git-Tag: v1.13~373^2 X-Git-Url: http://sjero.net/git/?p=wget;a=commitdiff_plain;h=c7f74c62d3e518387a8eaa51011ec83259440105 Don't download content just to ignore it. --- diff --git a/src/ChangeLog b/src/ChangeLog index 736a90e0..99cd940c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2008-11-13 Micah Cowan + + * http.c (gethttp): Don't do anything when content-length >= our + requested range. + 2008-11-12 Micah Cowan * ftp-ls.c (ftp_index): HTML-escape dir name in title, h1, a:href. diff --git a/src/http.c b/src/http.c index 0866f922..cd0dba85 100644 --- a/src/http.c +++ b/src/http.c @@ -2148,11 +2148,15 @@ File %s already there; not retrieving.\n\n"), quote (hs->local_file)); } } - if (statcode == HTTP_STATUS_RANGE_NOT_SATISFIABLE) + if (statcode == HTTP_STATUS_RANGE_NOT_SATISFIABLE + || (hs->restval > 0 && statcode == HTTP_STATUS_OK + && contrange == 0 && hs->restval >= contlen) + ) { /* If `-c' is in use and the file has been fully downloaded (or the remote file has shrunk), Wget effectively requests bytes - after the end of file and the server response with 416. */ + after the end of file and the server response with 416 + (or 200 with a <= Content-Length. */ logputs (LOG_VERBOSE, _("\ \n The file is already fully retrieved; nothing to do.\n\n")); /* In case the caller inspects. */