Commit f8e1fa62 authored by Wayne Davison's avatar Wayne Davison

Free a strdup() in do_cmd() that checker was complaining about.

parent 8e7f3107
...@@ -395,7 +395,7 @@ static pid_t do_cmd(char *cmd, char *machine, char *user, char **remote_argv, in ...@@ -395,7 +395,7 @@ static pid_t do_cmd(char *cmd, char *machine, char *user, char **remote_argv, in
int *f_in_p, int *f_out_p) int *f_in_p, int *f_out_p)
{ {
int i, argc = 0; int i, argc = 0;
char *args[MAX_ARGS]; char *args[MAX_ARGS], *need_to_free = NULL;
pid_t pid; pid_t pid;
int dash_l_set = 0; int dash_l_set = 0;
...@@ -406,7 +406,7 @@ static pid_t do_cmd(char *cmd, char *machine, char *user, char **remote_argv, in ...@@ -406,7 +406,7 @@ static pid_t do_cmd(char *cmd, char *machine, char *user, char **remote_argv, in
cmd = rsh_env; cmd = rsh_env;
if (!cmd) if (!cmd)
cmd = RSYNC_RSH; cmd = RSYNC_RSH;
cmd = strdup(cmd); /*MEMORY LEAK*/ cmd = need_to_free = strdup(cmd);
if (!cmd) if (!cmd)
goto oom; goto oom;
...@@ -538,6 +538,9 @@ static pid_t do_cmd(char *cmd, char *machine, char *user, char **remote_argv, in ...@@ -538,6 +538,9 @@ static pid_t do_cmd(char *cmd, char *machine, char *user, char **remote_argv, in
send_protected_args(*f_out_p, args); send_protected_args(*f_out_p, args);
} }
if (need_to_free)
free(need_to_free);
return pid; return pid;
oom: oom:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment