X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/1a05de2bff5c9a61777e1615f4363fd957711d8e..4a19c3b254b01c298fe25d72f450a760278e9386:/hlink.c diff --git a/hlink.c b/hlink.c index 814e4a42..e0a5265b 100644 --- a/hlink.c +++ b/hlink.c @@ -67,8 +67,7 @@ static void link_idev_data(void) alloc_pool_t hlink_pool; alloc_pool_t idev_pool = the_file_list->hlink_pool; - hlink_pool = pool_create(128 * 1024, sizeof (struct hlink), - out_of_memory, POOL_INTERN); + hlink_pool = pool_create(128 * 1024, sizeof (struct hlink), out_of_memory, POOL_INTERN); for (from = to = 0; from < hlink_count; from++) { start = from; @@ -83,6 +82,7 @@ static void link_idev_data(void) FPTR(cur)->F_HLINDEX = to; FPTR(cur)->F_NEXT = hlink_list[++from]; + FPTR(cur)->link_u.links->link_dest_used = 0; } pool_free(idev_pool, 0, FPTR(cur)->link_u.idev); if (from > start) { @@ -94,6 +94,7 @@ static void link_idev_data(void) FPTR(cur)->F_HLINDEX = to; FPTR(cur)->F_NEXT = head; FPTR(cur)->flags |= FLAG_HLINK_EOL; + FPTR(cur)->link_u.links->link_dest_used = 0; hlink_list[to++] = head; } else FPTR(cur)->link_u.links = NULL; @@ -216,8 +217,10 @@ int hard_link_check(struct file_struct *file, int ndx, char *fname, continue; statret = 1; st = &st3; - if (verbose < 2 || !stdout_format_has_i) - itemizing = code = 0; + if (verbose < 2 || !stdout_format_has_i) { + itemizing = 0; + code = FNONE; + } break; } if (!unchanged_file(cmpbuf, file, &st3)) @@ -266,7 +269,7 @@ int hard_link_one(struct file_struct *file, int ndx, char *fname, ITEM_LOCAL_CHANGE | ITEM_XNAME_FOLLOWS, 0, terse ? "" : toname); } - if (code && verbose && !terse) + if (code != FNONE && verbose && !terse) rprintf(code, "%s => %s\n", fname, toname); return 0; }