mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-05-19 12:25:42 -04:00
Itemize xattrs of a missing dir from an alt-dest dir.
Fixes bug 6576.
This commit is contained in:
@@ -1408,6 +1408,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;
|
||||
@@ -1455,11 +1457,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) {
|
||||
@@ -1739,7 +1743,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)) {
|
||||
|
||||
Reference in New Issue
Block a user