Caleb Cushing <[email protected]> writes:

> there might be a reason. but if you  use timestamp and continue
> together it only seems to utilize continue.

Thanks for your report, I am going to commit this patch.  It should fix
the problem you have reported.  Does it work for you?

Cheers,
Giuseppe



=== modified file 'src/http.c'
--- src/http.c  2010-06-14 17:24:47 +0000
+++ src/http.c  2010-07-11 13:39:40 +0000
@@ -2609,6 +2609,7 @@
   struct_stat st;
   bool send_head_first = true;
   char *file_name;
+  bool force_full_retrieve = false;
 
   /* Assert that no value for *LOCAL_FILE was passed. */
   assert (local_file == NULL || *local_file == NULL);
@@ -2732,7 +2733,9 @@
         *dt &= ~HEAD_ONLY;
 
       /* Decide whether or not to restart.  */
-      if (opt.always_rest
+      if (force_full_retrieve)
+        hstat.restval = hstat.len;
+      else if (opt.always_rest
           && got_name
           && stat (hstat.local_file, &st) == 0
           && S_ISREG (st.st_mode))
@@ -2920,8 +2923,11 @@
                                 }
                             }
                           else
-                            logputs (LOG_VERBOSE,
-                                     _("Remote file is newer, retrieving.\n"));
+                            {
+                              force_full_retrieve = true;
+                              logputs (LOG_VERBOSE,
+                                       _("Remote file is newer, 
retrieving.\n"));
+                            }
 
                           logputs (LOG_VERBOSE, "\n");
                         }


Reply via email to