X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/3ea6e0e7a1a3938acd6ce455b71d816a80b1eaca..d762dfe94b9b9122f58a12ac1f5a0dfacee5dcb1:/rsync.c diff --git a/rsync.c b/rsync.c index 0a383535..789aa61d 100644 --- a/rsync.c +++ b/rsync.c @@ -3,12 +3,11 @@ * * Copyright (C) 1996 Andrew Tridgell * Copyright (C) 1996 Paul Mackerras - * Copyright (C) 2003, 2004, 2005, 2006 Wayne Davison + * Copyright (C) 2003-2007 Wayne Davison * * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -183,6 +182,8 @@ int read_ndx_and_attrs(int f_in, int f_out, int *iflag_ptr, exit_cleanup(RERR_PROTOCOL); } } else if (f_out >= 0) { + if (inc_recurse) + send_extra_file_list(f_out, FILECNT_LOOKAHEAD); write_ndx_and_attrs(f_out, ndx, iflags, fnamecmp_type, buf, len); } @@ -407,7 +408,7 @@ struct file_list *flist_for_ndx(int ndx) { struct file_list *flist = cur_flist; - if (!flist) + if (!flist && !(flist = first_flist)) return NULL; while (ndx < flist->ndx_start) {