- Changed increment_active_files() to call check_for_finished_files()
and to avoid calling both io_flush() and read_msg_fd() in the same
iteration of a loop (since the former may have called the latter).
const char phase_unknown[] = "unknown";
int ignore_timeout = 0;
int batch_fd = -1;
const char phase_unknown[] = "unknown";
int ignore_timeout = 0;
int batch_fd = -1;
/* Ignore an EOF error if non-zero. See whine_about_eof(). */
int kluge_around_eof = 0;
/* Ignore an EOF error if non-zero. See whine_about_eof(). */
int kluge_around_eof = 0;
readfd(fd, buf, len);
stats.total_read = read_longint(fd);
}
readfd(fd, buf, len);
stats.total_read = read_longint(fd);
}
break;
case MSG_REDO:
if (len != 4 || !am_generator)
break;
case MSG_REDO:
if (len != 4 || !am_generator)
{
/* TODO: tune these limits? */
while (active_filecnt >= (active_bytecnt >= 128*1024 ? 10 : 50)) {
{
/* TODO: tune these limits? */
while (active_filecnt >= (active_bytecnt >= 128*1024 ? 10 : 50)) {
-#ifdef SUPPORT_HARD_LINKS
- if (hlink_list.head)
- check_for_finished_hlinks(itemizing, code);
-#endif
- io_flush(NORMAL_FLUSH);
- read_msg_fd();
+ check_for_finished_files(itemizing, code, 0);
+ if (iobuf_out_cnt)
+ io_flush(NORMAL_FLUSH);
+ else
+ read_msg_fd();