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
Handle new def_compress_level setting.
[rsync/rsync.git]
/
generator.c
diff --git
a/generator.c
b/generator.c
index
b795f0f
..
22a4ce0
100644
(file)
--- a/
generator.c
+++ b/
generator.c
@@
-52,7
+52,8
@@
extern int ignore_errors;
extern int remove_sent_files;
extern int delay_updates;
extern int update_only;
extern int remove_sent_files;
extern int delay_updates;
extern int update_only;
-extern int opt_ignore_existing;
+extern int ignore_existing;
+extern int ignore_non_existing;
extern int inplace;
extern int append_mode;
extern int make_backups;
extern int inplace;
extern int append_mode;
extern int make_backups;
@@
-60,6
+61,7
@@
extern int csum_length;
extern int ignore_times;
extern int size_only;
extern OFF_T max_size;
extern int ignore_times;
extern int size_only;
extern OFF_T max_size;
+extern OFF_T min_size;
extern int io_error;
extern int allowed_lull;
extern int sock_f_out;
extern int io_error;
extern int allowed_lull;
extern int sock_f_out;
@@
-75,7
+77,6
@@
extern int link_dest;
extern int whole_file;
extern int list_only;
extern int read_batch;
extern int whole_file;
extern int list_only;
extern int read_batch;
-extern int only_existing;
extern int orig_umask;
extern int safe_symlinks;
extern long block_size; /* "long" because popt can't set an int32. */
extern int orig_umask;
extern int safe_symlinks;
extern long block_size; /* "long" because popt can't set an int32. */
@@
-675,8
+676,7
@@
static void recv_generator(char *fname, struct file_struct *file, int ndx,
stat_errno = errno;
}
stat_errno = errno;
}
- if (only_existing && statret == -1 && stat_errno == ENOENT) {
- /* we only want to update existing files */
+ if (ignore_non_existing && statret == -1 && stat_errno == ENOENT) {
if (verbose > 1) {
rprintf(FINFO, "not creating new %s \"%s\"\n",
S_ISDIR(file->mode) ? "directory" : "file",
if (verbose > 1) {
rprintf(FINFO, "not creating new %s \"%s\"\n",
S_ISDIR(file->mode) ? "directory" : "file",
@@
-873,8
+873,17
@@
static void recv_generator(char *fname, struct file_struct *file, int ndx,
}
return;
}
}
return;
}
+ if (min_size && file->length < min_size) {
+ if (verbose > 1) {
+ if (the_file_list->count == 1)
+ fname = f_name(file);
+ rprintf(FINFO, "%s is under min-size\n",
+ safe_fname(fname));
+ }
+ return;
+ }
- if (
opt_
ignore_existing && statret == 0) {
+ if (ignore_existing && statret == 0) {
if (verbose > 1)
rprintf(FINFO, "%s exists\n", safe_fname(fname));
return;
if (verbose > 1)
rprintf(FINFO, "%s exists\n", safe_fname(fname));
return;
@@
-1178,8
+1187,8
@@
void generate_files(int f_out, struct file_list *flist, char *local_name)
int lull_mod = allowed_lull * 5;
int need_retouch_dir_times = preserve_times && !omit_dir_times;
int need_retouch_dir_perms = 0;
int lull_mod = allowed_lull * 5;
int need_retouch_dir_times = preserve_times && !omit_dir_times;
int need_retouch_dir_perms = 0;
- int save_
only_existing = only
_existing;
- int save_
opt_ignore_existing = opt_ignore
_existing;
+ int save_
ignore_existing = ignore
_existing;
+ int save_
ignore_non_existing = ignore_non
_existing;
int save_do_progress = do_progress;
int save_make_backups = make_backups;
int save_do_progress = do_progress;
int save_make_backups = make_backups;
@@
-1266,7
+1275,7
@@
void generate_files(int f_out, struct file_list *flist, char *local_name)
phase++;
csum_length = SUM_LENGTH;
phase++;
csum_length = SUM_LENGTH;
-
only_existing = max_size = opt_ignore
_existing = 0;
+
max_size = min_size = ignore_existing = ignore_non
_existing = 0;
update_only = always_checksum = size_only = 0;
ignore_times = 1;
if (append_mode) /* resend w/o append mode */
update_only = always_checksum = size_only = 0;
ignore_times = 1;
if (append_mode) /* resend w/o append mode */
@@
-1288,8
+1297,8
@@
void generate_files(int f_out, struct file_list *flist, char *local_name)
}
phase++;
}
phase++;
-
only_existing = save_only
_existing;
-
opt_ignore_existing = save_opt
_ignore_existing;
+
ignore_non_existing = save_ignore_non
_existing;
+
ignore_existing = save
_ignore_existing;
make_backups = save_make_backups;
if (verbose > 2)
make_backups = save_make_backups;
if (verbose > 2)