mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-10-22 05:44:17 -04:00
Fixed more potential hang cases for incremental recursion.
This commit is contained in:
1 parent
b9d5eea5c6
commit
896f046f79
1 file changed
+9
-3
+9
-3
@@ -1902,8 +1902,10 @@ void generate_files(int f_out, const char *local_name)
|
||||
break;
|
||||
}
|
||||
|
||||
while (!cur_flist->next && !flist_eof) {
|
||||
while (1) {
|
||||
check_for_finished_files(itemizing, code, 1);
|
||||
if (cur_flist->next || flist_eof)
|
||||
break;
|
||||
wait_for_receiver();
|
||||
}
|
||||
} while ((cur_flist = cur_flist->next) != NULL);
|
||||
@@ -1914,8 +1916,10 @@ void generate_files(int f_out, const char *local_name)
|
||||
if (verbose > 2)
|
||||
rprintf(FINFO, "generate_files phase=%d\n", phase);
|
||||
|
||||
while (!msgdone_cnt) {
|
||||
while (1) {
|
||||
check_for_finished_files(itemizing, code, 1);
|
||||
if (msgdone_cnt)
|
||||
break;
|
||||
wait_for_receiver();
|
||||
}
|
||||
|
||||
@@ -1929,8 +1933,10 @@ void generate_files(int f_out, const char *local_name)
|
||||
write_ndx(f_out, NDX_DONE);
|
||||
|
||||
/* Read MSG_DONE for the redo phase (and any prior messages). */
|
||||
while (msgdone_cnt <= 1) {
|
||||
while (1) {
|
||||
check_for_finished_files(itemizing, code, 0);
|
||||
if (msgdone_cnt > 1)
|
||||
break;
|
||||
wait_for_receiver();
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user