- if (preserve_hard_links && file->link_u.links)
- hard_link_cluster(file, ndx, itemizing, code);
- } else if (itemizing)
-@@ -906,7 +913,7 @@ static void recv_generator(char *fname,
- && verbose && code && f_out != -1)
- rprintf(code, "%s/\n", fname);
- if (delete_during && f_out != -1 && !phase && dry_run < 2
-- && (file->flags & FLAG_DEL_HERE))
-+ && (FFLAGS(file) & FLAG_DEL_HERE))
- delete_in_dir(the_file_list, fname, file, &st);
- return;
- }
-@@ -1188,7 +1195,7 @@ static void recv_generator(char *fname,
- if (fuzzy_dirlist) {
- int j = flist_find(fuzzy_dirlist, file);
- if (j >= 0) /* don't use changing file as future fuzzy basis */
-- fuzzy_dirlist->files[j]->flags |= FLAG_NO_FUZZY;
-+ FFLAGS(fuzzy_dirlist->files[j]) |= FLAG_NO_FUZZY;
- }
-
- /* open the file */
---- old/hlink.c
-+++ new/hlink.c
-@@ -26,6 +26,7 @@ extern int link_dest;
- extern int make_backups;
- extern int log_format_has_i;
- extern char *basis_dir[];
-+extern unsigned int file_struct_len;
- extern struct file_list *the_file_list;
-
- #ifdef SUPPORT_HARD_LINKS
-@@ -86,10 +87,10 @@ static void link_idev_data(void)
- FPTR(cur)->link_u.links = pool_talloc(hlink_pool,
- struct hlink, 1, "hlink_list");
-
-- FPTR(head)->flags |= FLAG_HLINK_TOL;
-+ FFLAGS(FPTR(head)) |= FLAG_HLINK_TOL;
- FPTR(cur)->F_HLINDEX = to;
- FPTR(cur)->F_NEXT = head;
-- FPTR(cur)->flags |= FLAG_HLINK_EOL;
-+ FFLAGS(FPTR(cur)) |= FLAG_HLINK_EOL;
- hlink_list[to++] = head;
- } else
- FPTR(cur)->link_u.links = NULL;
-@@ -175,7 +176,7 @@ int hard_link_check(struct file_struct *
- {
- #ifdef SUPPORT_HARD_LINKS
- int head;
-- if (skip && !(file->flags & FLAG_HLINK_EOL))
-+ if (skip && !(FFLAGS(file) & FLAG_HLINK_EOL))
- head = hlink_list[file->F_HLINDEX] = file->F_NEXT;
- else
- head = hlink_list[file->F_HLINDEX];
-@@ -270,8 +271,8 @@ void hard_link_cluster(struct file_struc
- file->F_HLINDEX = FINISHED_LINK;
- if (link_stat(f_name(file, hlink1), &st1, 0) < 0)
- return;
-- if (!(file->flags & FLAG_HLINK_TOL)) {
-- while (!(file->flags & FLAG_HLINK_EOL)) {
-+ if (!(FFLAGS(file) & FLAG_HLINK_TOL)) {
-+ while (!(FFLAGS(file) & FLAG_HLINK_EOL)) {
- ndx = file->F_NEXT;
- file = FPTR(ndx);
- }
-@@ -286,6 +287,6 @@ void hard_link_cluster(struct file_struc
- maybe_hard_link(file, ndx, hlink2, statret, &st2,
- hlink1, &st1, itemizing, code);
- file->F_HLINDEX = FINISHED_LINK;
-- } while (!(file->flags & FLAG_HLINK_EOL));
-+ } while (!(FFLAGS(file) & FLAG_HLINK_EOL));
- #endif
- }