diff --git a/src/ChangeLog b/src/ChangeLog index 918b0590..6666f589 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2001-05-09 Hrvoje Niksic <hniksic@arsdigita.com> + + * http.c (gethttp): Before concluding that the file is already + fully retrieved, make sure that the file existed and `Range' was + actually requested. + 2001-05-09 Hrvoje Niksic <hniksic@arsdigita.com> * cookies.c (eliminate_dups): New function. diff --git a/src/http.c b/src/http.c index bf6a57ea..23ed7ddc 100644 --- a/src/http.c +++ b/src/http.c @@ -1190,7 +1190,11 @@ Accept: %s\r\n\ if (opt.always_rest) { /* Check for condition #2. */ - if (hs->restval >= contlen) + if (hs->restval > 0 /* restart was requested. */ + && contlen != -1 /* we got content-length. */ + && hs->restval >= contlen /* file fully downloaded + or has shrunk. */ + ) { logputs (LOG_VERBOSE, _("\ \n The file is already fully retrieved; nothing to do.\n\n"));