The patches for 3.0.4pre1.
[rsync/rsync-patches.git] / checksum-updating.diff
index e85c8a7..bea59fa 100644 (file)
@@ -433,16 +433,16 @@ diff --git a/flist.c b/flist.c
        if (f >= 0 && recurse && !divert_dirs) {
                int i, end = flist->used - 1;
                /* send_if_directory() bumps flist->used, so use "end". */
-@@ -2435,6 +2651,9 @@ struct file_list *send_file_list(int f, int argc, char *argv[])
-               }
+@@ -2436,6 +2652,9 @@ struct file_list *send_file_list(int f, int argc, char *argv[])
        } else
                flist_eof = 1;
-+      
 +      if (checksum_files & CSF_UPDATE && flist_eof)
 +              reset_checksum_cache(0); /* writes any last updates */
++
        return flist;
  }
 diff --git a/generator.c b/generator.c
 --- a/generator.c
 +++ b/generator.c
@@ -490,7 +490,7 @@ diff --git a/generator.c b/generator.c
                if (itemizing)
                        itemize(fnamecmp, file, ndx, statret, &sx, 0, 0, NULL);
  #ifdef SUPPORT_HARD_LINKS
-@@ -2247,6 +2252,7 @@ void generate_files(int f_out, const char *local_name)
+@@ -2250,6 +2255,7 @@ void generate_files(int f_out, const char *local_name)
                                } else
                                        change_local_filter_dir(fbuf, strlen(fbuf), F_DEPTH(fp));
                        }
@@ -498,7 +498,7 @@ diff --git a/generator.c b/generator.c
                }
                for (i = cur_flist->low; i <= cur_flist->high; i++) {
                        struct file_struct *file = cur_flist->sorted[i];
-@@ -2327,6 +2333,9 @@ void generate_files(int f_out, const char *local_name)
+@@ -2333,6 +2339,9 @@ void generate_files(int f_out, const char *local_name)
                        wait_for_receiver();
        }