- Fixed an inc_recurse problem with implied dirs not getting created
[rsync/rsync.git] / rsync.h
diff --git a/rsync.h b/rsync.h
index 1a136e7..23fab1a 100644 (file)
--- a/rsync.h
+++ b/rsync.h
@@ -62,7 +62,7 @@
 
 #define FLAG_TOP_DIR (1<<0)    /* sender/receiver/generator */
 #define FLAG_FILE_SENT (1<<1)  /* sender/receiver/generator */
-#define FLAG_DIR_CHANGED (1<<1)        /* generator */
+#define FLAG_DIR_CREATED (1<<1)        /* generator */
 #define FLAG_XFER_DIR (1<<2)   /* sender/receiver/generator */
 #define FLAG_MOUNT_DIR (1<<3)  /* sender/generator */
 #define FLAG_DUPLICATE (1<<4)  /* sender */
@@ -587,7 +587,7 @@ extern int xattrs_ndx;
 #define OPT_EXTRA(f,bump) ((union file_extras*)(f) - file_extra_cnt - 1 - (bump))
 
 #define LEN64_BUMP(f) ((f)->flags & FLAG_LENGTH64 ? 1 : 0)
-#define HLINK_BUMP(f) (F_IS_HLINKED(f) ? inc_recurse+1 : 0)
+#define HLINK_BUMP(f) ((f)->flags & (FLAG_HLINKED|FLAG_HLINK_DONE) ? inc_recurse+1 : 0)
 #define ACL_BUMP(f) (acls_ndx ? 1 : 0)
 
 /* The length applies to all items. */