Output some info about the size of our structures.
[rsync/rsync.git] / io.c
diff --git a/io.c b/io.c
index 33a0e65..75f3913 100644 (file)
--- a/io.c
+++ b/io.c
@@ -302,11 +302,13 @@ static void read_msg_fd(void)
                        flist_ndx_push(&hlink_list, IVAL(buf,0));
                break;
        case MSG_SOCKERR:
+       case MSG_CLIENT:
                if (!am_generator) {
                        rprintf(FERROR, "invalid message %d:%d\n", tag, len);
                        exit_cleanup(RERR_STREAMIO);
                }
-               close_multiplexing_out();
+               if (tag == MSG_SOCKERR)
+                       close_multiplexing_out();
                /* FALL THROUGH */
        case MSG_INFO:
        case MSG_ERROR:
@@ -336,19 +338,21 @@ void increment_active_files(int ndx, int itemizing, enum logcode code)
 {
        /* 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
                read_msg_fd();
        }
 
        active_filecnt++;
-       active_bytecnt += the_file_list->files[ndx]->length;
+       active_bytecnt += F_LENGTH(the_file_list->files[ndx]);
 }
 
 void decrement_active_files(int ndx)
 {
        active_filecnt--;
-       active_bytecnt -= the_file_list->files[ndx]->length;
+       active_bytecnt -= F_LENGTH(the_file_list->files[ndx]);
 }
 
 /* Try to push messages off the list onto the wire.  If we leave with more
@@ -415,8 +419,10 @@ void send_msg_int(enum msgcode code, int num)
 int get_redo_num(int itemizing, enum logcode code)
 {
        while (1) {
+#ifdef SUPPORT_HARD_LINKS
                if (hlink_list.head)
                        check_for_finished_hlinks(itemizing, code);
+#endif
                if (redo_list.head)
                        break;
                read_msg_fd();