X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/213d432823cbeee334102c839711184c9a98e469..b2b87acf73c2070d19b6f345442aa2960f98cf4b:/checksum-updating.diff diff --git a/checksum-updating.diff b/checksum-updating.diff index ea3fb93..c638dd6 100644 --- a/checksum-updating.diff +++ b/checksum-updating.diff @@ -371,28 +371,15 @@ To use this patch, run these commands for a successful build: if (f >= 0 && recurse && !divert_dirs) { int i, end = flist->used - 1; /* send_if_directory() bumps flist->used, so use "end". */ -@@ -2249,7 +2399,11 @@ struct file_list *send_file_list(int f, - * file-list to check if this is a 1-file xfer. */ - send_extra_file_list(f, 1); - } -- } -+ } else -+ flist_eof = 1; -+ -+ if (checksum_updating && always_checksum && flist_eof) +@@ -2253,7 +2403,7 @@ struct file_list *send_file_list(int f, + flist_eof = 1; + + if (checksum_updating && always_checksum && flist_eof) +- read_checksums(NULL); + read_checksums(NULL); /* writes any last updates */ return flist; } -@@ -2535,7 +2689,7 @@ void flist_free(struct file_list *flist) - - if (!flist->prev || !flist_cnt) - pool_destroy(flist->file_pool); -- else -+ else if (flist->pool_boundary) - pool_free_old(flist->file_pool, flist->pool_boundary); - - if (flist->sorted && flist->sorted != flist->files) --- old/loadparm.c +++ new/loadparm.c @@ -153,6 +153,7 @@ typedef struct