X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/aa7ed2014183d671b61b785d1eb68fde9f6f48ec..cbbe4892087b74fb8ed2aac6078ee933ac02e920:/main.c diff --git a/main.c b/main.c index 246a6ac2..ce5490ac 100644 --- a/main.c +++ b/main.c @@ -334,8 +334,6 @@ static int do_recv(int f_in,int f_out,struct file_list *flist,char *local_name) if ((pid=fork()) == 0) { recv_files(f_in,flist,local_name,recv_pipe[1]); - if (preserve_hard_links) - do_hard_links(flist); if (verbose > 2) fprintf(FERROR,"receiver read %d\n",read_total()); exit_cleanup(0); @@ -555,14 +553,15 @@ int main(int argc,char *argv[]) break; case 'l': -#if SUPPORT_LINKS preserve_links=1; -#endif break; case 'H': #if SUPPORT_HARD_LINKS preserve_hard_links=1; +#else + fprintf(FERROR,"ERROR: hard links not supported on this platform\n"); + exit_cleanup(1); #endif break; @@ -659,6 +658,13 @@ int main(int argc,char *argv[]) if (dry_run) verbose = MAX(verbose,1); +#ifndef SUPPORT_LINKS + if (!am_server && preserve_links) { + fprintf(FERROR,"ERROR: symbolic links not supported\n"); + exit_cleanup(1); + } +#endif + if (am_server) { setup_protocol(STDOUT_FILENO,STDIN_FILENO); @@ -732,8 +738,10 @@ int main(int argc,char *argv[]) setup_protocol(f_out,f_in); +#if HAVE_SETLINEBUF setlinebuf(FINFO); setlinebuf(FERROR); +#endif if (verbose > 3) fprintf(FERROR,"parent=%d child=%d sender=%d recurse=%d\n",