From: Martin Pool Date: Mon, 8 Apr 2002 03:37:19 +0000 (+0000) Subject: Rearrange code slightly to avoid util.c depending on main.c. X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/commitdiff_plain/25d34a5c80f4d2126af71589a23a866981db02cb Rearrange code slightly to avoid util.c depending on main.c. --- diff --git a/main.c b/main.c index ef274c79..86eca2ca 100644 --- a/main.c +++ b/main.c @@ -231,7 +231,7 @@ static pid_t do_cmd(char *cmd,char *machine,char *user,char *path,int *f_in,int if (local_server) { if (read_batch) create_flist_from_batch(); /* sets batch_flist */ - ret = local_child(argc, args, f_in, f_out); + ret = local_child(argc, args, f_in, f_out, child_main); } else { ret = piped_child(args,f_in,f_out); } @@ -493,6 +493,12 @@ static void do_server_recv(int f_in, int f_out, int argc,char *argv[]) } +void child_main(int argc, char *argv[]) +{ + start_server(STDIN_FILENO, STDOUT_FILENO, argc, argv); +} + + void start_server(int f_in, int f_out, int argc, char *argv[]) { extern int cvs_exclude; diff --git a/util.c b/util.c index db625876..9b54c05a 100644 --- a/util.c +++ b/util.c @@ -179,7 +179,8 @@ pid_t piped_child(char **command, int *f_in, int *f_out) return pid; } -pid_t local_child(int argc, char **argv,int *f_in,int *f_out) +pid_t local_child(int argc, char **argv,int *f_in,int *f_out, + int (*child_main)(int, char **)) { pid_t pid; int to_child_pipe[2]; @@ -215,7 +216,7 @@ pid_t local_child(int argc, char **argv,int *f_in,int *f_out) } if (to_child_pipe[0] != STDIN_FILENO) close(to_child_pipe[0]); if (from_child_pipe[1] != STDOUT_FILENO) close(from_child_pipe[1]); - start_server(STDIN_FILENO, STDOUT_FILENO, argc, argv); + child_main(argc, argv); } if (close(from_child_pipe[1]) < 0 || @@ -991,9 +992,9 @@ void show_progress(OFF_T ofs, OFF_T size) * * @param dest Target of the symlink in question. * - * @src src Top source directory currently applicable. Basically this + * @param src Top source directory currently applicable. Basically this * is the first parameter to rsync in a simple invocation, but it's - * modified as topsrcname in slightly complex ways. + * modified by flist.c in slightly complex ways. * * @retval True if unsafe * @retval False is unsafe