From 575933e9d0c02626cea924187034b001bd5210f0 Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Sat, 1 Jan 2011 12:54:07 -0800 Subject: [PATCH] Itemize xattrs of a missing dir from an alt-dest dir. Fixes bug 6576. --- generator.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/generator.c b/generator.c index 61a23059..32d56eac 100644 --- a/generator.c +++ b/generator.c @@ -1282,6 +1282,8 @@ static void recv_generator(char *fname, struct file_struct *file, int ndx, goto cleanup; } + fnamecmp = fname; + if (is_dir) { if (!implied_dirs && file->flags & FLAG_IMPLIED_DIR) goto cleanup; @@ -1329,11 +1331,13 @@ static void recv_generator(char *fname, struct file_struct *file, int ndx, itemizing = 0; code = FNONE; statret = 1; - } else if (j >= 0) + } else if (j >= 0) { statret = 1; + fnamecmp = fnamecmpbuf; + } } if (itemizing && f_out != -1) { - itemize(fname, file, ndx, statret, &sx, + itemize(fnamecmp, file, ndx, statret, &sx, statret ? ITEM_LOCAL_CHANGE : 0, 0, NULL); } if (real_ret != 0 && do_mkdir(fname,file->mode) < 0 && errno != EEXIST) { @@ -1590,7 +1594,6 @@ static void recv_generator(char *fname, struct file_struct *file, int ndx, goto cleanup; } - fnamecmp = fname; fnamecmp_type = FNAMECMP_FNAME; if (statret == 0 && !S_ISREG(sx.st.st_mode)) { -- 2.34.1