Fix cast that was breaking HP/UX.
[rsync/rsync.git] / batch.c
diff --git a/batch.c b/batch.c
index 3482673..912bb69 100644 (file)
--- a/batch.c
+++ b/batch.c
@@ -396,16 +396,20 @@ void write_batch_csum_info(int *flist_entry, int flist_count,
                           struct sum_struct *s)
 {
        int i;
-       int int_zero = 0;
+       unsigned int int_zero = 0;
        extern int csum_length;
 
        fdb_open = 1;
 
        /* Write csum info to batch file */
 
+       /* FIXME: This will break if s->count is ever not exactly an int. */
        write_batch_csums_file((char *) flist_entry, sizeof(int));
-       write_batch_csums_file((char *) (s ? &s->count : &int_zero),
-                              sizeof(int));
+       if (s)
+               write_batch_csums_file((char *) &s->count, sizeof(int));
+       else
+               write_batch_csums_file((char *) &int_zero, sizeof (int));
+       
        if (s) {
                for (i = 0; i < s->count; i++) {
                        write_batch_csums_file((char *) &s->sums[i].sum1,