Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added checks for sigaction() and sigprocmask().
[rsync/rsync.git]
/
flist.c
diff --git
a/flist.c
b/flist.c
index
3e757db
..
a071cda
100644
(file)
--- a/
flist.c
+++ b/
flist.c
@@
-58,7
+58,7
@@
extern int copy_links;
extern int copy_unsafe_links;
extern int protocol_version;
extern int sanitize_paths;
extern int copy_unsafe_links;
extern int protocol_version;
extern int sanitize_paths;
-extern
int orig_umask
;
+extern
const char *io_write_phase
;
extern struct stats stats;
extern struct file_list *the_file_list;
extern struct stats stats;
extern struct file_list *the_file_list;
@@
-713,12
+713,6
@@
static struct file_struct *receive_file_entry(struct file_list *flist,
read_buf(f, sum, checksum_len);
}
read_buf(f, sum, checksum_len);
}
- if (!preserve_perms) {
- /* set an appropriate set of permissions based on original
- * permissions and umask. This emulates what GNU cp does */
- file->mode &= ~orig_umask;
- }
-
return file;
}
return file;
}
@@
-1916,6
+1910,7
@@
struct file_list *get_dirlist(char *dirname, int dlen,
struct file_list *dirlist;
char dirbuf[MAXPATHLEN];
int save_recurse = recurse;
struct file_list *dirlist;
char dirbuf[MAXPATHLEN];
int save_recurse = recurse;
+ int save_xfer_dirs = xfer_dirs;
if (dlen < 0) {
dlen = strlcpy(dirbuf, dirname, MAXPATHLEN);
if (dlen < 0) {
dlen = strlcpy(dirbuf, dirname, MAXPATHLEN);
@@
-1927,7
+1922,9
@@
struct file_list *get_dirlist(char *dirname, int dlen,
dirlist = flist_new(WITHOUT_HLINK, "get_dirlist");
recurse = 0;
dirlist = flist_new(WITHOUT_HLINK, "get_dirlist");
recurse = 0;
+ xfer_dirs = 1;
send_directory(ignore_filter_rules ? -2 : -1, dirlist, dirname, dlen);
send_directory(ignore_filter_rules ? -2 : -1, dirlist, dirname, dlen);
+ xfer_dirs = save_xfer_dirs;
recurse = save_recurse;
if (do_progress)
flist_count_offset += dirlist->count;
recurse = save_recurse;
if (do_progress)
flist_count_offset += dirlist->count;