deletion_count--;
return 0;
}
- if (!zap_dir || (errno != ENOTEMPTY && errno != EEXIST)) {
+ if (!zap_dir) {
rsyserr(FERROR, errno, "delete_file: rmdir %s failed",
full_fname(fname));
return -1;
continue;
f_name_to(fp, buf);
- if (delete_item(buf, fp->mode, flags & ~DEL_TERSE) != 0) {
- flist_free(dirlist);
- return -1;
- }
+ delete_item(buf, fp->mode, flags & ~DEL_TERSE);
}
flist_free(dirlist);
if (flist_find(flist, fp) < 0) {
int mode = fp->mode;
f_name_to(fp, delbuf);
- if (delete_item(delbuf, mode, DEL_FORCE_RECURSE) < 0)
- break;
+ delete_item(delbuf, mode, DEL_FORCE_RECURSE);
}
}
: S_ISDIR(file->mode) ? !omit_dir_times
: !S_ISLNK(file->mode);
- if ((iflags & (ITEM_TRANSFER|ITEM_LOCAL_CHANGE) && !keep_time)
+ if ((iflags & (ITEM_TRANSFER|ITEM_LOCAL_CHANGE) && !keep_time
+ && (!(iflags & ITEM_XNAME_FOLLOWS) || *xname))
|| (keep_time && file->modtime != st->st_mtime))
iflags |= ITEM_REPORT_TIME;
if (preserve_perms && file->mode != st->st_mode)