From: Wayne Davison Date: Mon, 29 Dec 2008 01:51:36 +0000 (-0800) Subject: Avoid a hang when using at least 3 --verbose options on a transfer with X-Git-Tag: v3.0.5~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b64ae8b3b4e1fe6d12075ddac07b864369602980;p=thirdparty%2Frsync.git Avoid a hang when using at least 3 --verbose options on a transfer with a client sender (which includes local copying). --- diff --git a/NEWS b/NEWS index e7140951..7a920d0d 100644 --- a/NEWS +++ b/NEWS @@ -42,6 +42,9 @@ Changes since 3.0.4: - Fixed a bug when using --sparse on a sparse file that has over 2GB of consecutive sparse data. + - Avoid a hang when using at least 3 --verbose options on a transfer with a + client sender (which includes local copying). + - Fixed a problem with --delete-delay reporting an error when it was ready to remove a directory that was now gone. diff --git a/flist.c b/flist.c index 83ce237c..8e435a91 100644 --- a/flist.c +++ b/flist.c @@ -2246,6 +2246,7 @@ struct file_list *recv_file_list(int f) struct file_list *flist; int dstart, flags; int64 start_read; + int save_verbose = verbose; if (!first_flist) rprintf(FLOG, "receiving file list\n"); @@ -2272,6 +2273,8 @@ struct file_list *recv_file_list(int f) dstart = 0; } + if (am_server && verbose > 2) + verbose = 2; while ((flags = read_byte(f)) != 0) { struct file_struct *file; @@ -2296,6 +2299,7 @@ struct file_list *recv_file_list(int f) } } file_total += flist->used; + verbose = save_verbose; if (verbose > 2) rprintf(FINFO, "received %d names\n", flist->used);