X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/4f77c9b940d6f2264769180058012a7a77711834..7ac2aef2fd35ed0cffe2b558b69643f12662a03e:/soften-links.diff diff --git a/soften-links.diff b/soften-links.diff index 82be974..aff79a5 100644 --- a/soften-links.diff +++ b/soften-links.diff @@ -1,51 +1,29 @@ -From md@Linux.IT Fri Apr 12 21:45:04 2002 -Return-Path: -Delivered-To: mbp@samba.org -Received: from attila.bofh.it (attila.bofh.it [213.92.8.2]) - by lists.samba.org (Postfix) with ESMTP id 1D3674500 - for ; Fri, 12 Apr 2002 04:45:04 -0700 (PDT) -Received: by attila.bofh.it (Postfix, from userid 10) - id 462BB5FA70; Fri, 12 Apr 2002 13:44:29 +0200 (CEST) -Received: by wonderland.linux.it (Postfix/Md, from userid 1001) - id D8B4E33B2D; Fri, 12 Apr 2002 13:44:22 +0200 (CEST) Date: Fri, 12 Apr 2002 13:44:22 +0200 From: Marco d'Itri To: mbp@samba.org Subject: rsync and debian mirrors -Message-ID: <20020412114422.GA1664@wonderland.linux.it> -Mime-Version: 1.0 -Content-Type: text/plain; charset=us-ascii -Content-Disposition: inline -User-Agent: Mutt/1.3.28i -Status: RO -X-Status: A -Content-Length: 658 -Lines: 26 I run one of the debian mirrors, and I had to write this patch because my archive is split between more than one disk. Would you accept a more polished version of this patch for inclusion in rsync? ---- syscall.c.orig Thu May 31 16:14:07 2001 -+++ syscall.c Thu May 31 16:40:46 2001 -@@ -45,9 +45,14 @@ - #if HAVE_LINK - int do_link(char *fname1, char *fname2) +[Updated to latest CVS source by Wayne Davison.] + +--- old/syscall.c ++++ new/syscall.c +@@ -62,9 +62,14 @@ int do_symlink(const char *fname1, const + #ifdef HAVE_LINK + int do_link(const char *fname1, const char *fname2) { -+ int st; ++ int st; + - if (dry_run) return 0; - CHECK_RO -- return link(fname1, fname2); -+ st = link(fname1, fname2); -+ if (/*soften_links &&*/ st != 0 && errno == EXDEV) -+ st = symlink(fname1, fname2); -+ return st; + if (dry_run) return 0; + RETURN_ERROR_IF_RO_OR_LO; +- return link(fname1, fname2); ++ st = link(fname1, fname2); ++ if (/*soften_links &&*/ st != 0 && errno == EXDEV) ++ st = symlink(fname1, fname2); ++ return st; } #endif - - --- -ciao, -Marco - +