Don't print out the directory name twice in verbose mode; it was being
[rsync/rsync.git] / generator.c
index 767e86c..93faa54 100644 (file)
@@ -247,7 +247,9 @@ void recv_generator(char *fname,struct file_list *flist,int i,int f_out)
                                        fname,strerror(errno));
                        }
                }
-               if (set_perms(fname,file,NULL,0) && verbose) 
+               /* f_out is set to -1 when doing final directory 
+                  permission and modification time repair */
+               if (set_perms(fname,file,NULL,0) && verbose && (f_out != -1)) 
                        rprintf(FINFO,"%s/\n",fname);
                return;
        }
@@ -429,6 +431,11 @@ void generate_files(int f,struct file_list *flist,char *local_name,int f_recv)
                rprintf(FINFO,"generator starting pid=%d count=%d\n",
                        (int)getpid(),flist->count);
 
+       /* we expect to just sit around now, so don't exit on a
+          timeout. If we really get a timeout then the other process should
+          exit */
+       io_timeout = 0;
+
        for (i = 0; i < flist->count; i++) {
                struct file_struct *file = flist->files[i];
                mode_t saved_mode = file->mode;
@@ -458,11 +465,6 @@ void generate_files(int f,struct file_list *flist,char *local_name,int f_recv)
 
        write_int(f,-1);
 
-       /* we expect to just sit around now, so don't exit on a
-          timeout. If we really get a timeout then the other process should
-          exit */
-       io_timeout = 0;
-
        if (remote_version >= 13) {
                /* in newer versions of the protocol the files can cycle through
                   the system more than once to catch initial checksum errors */