Browse Source

finish_connect(): thinkofix

All but one callers have ignore the return value from this
function, but the only caller, builtin-tar-tree.c::remote_tar(),
assumed it returns non-zero on failure and zero on success.  The
implementation however was returning either the waited pid
(which must be the same as its input) or -1 (an error).

Fix this thinko, while getting rid of an assignment of return
value from waitpid() into a variable of type int.

Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Junio C Hamano 19 years ago
parent
commit
53e1a761be
  1. 11
      connect.c

11
connect.c

@ -737,14 +737,9 @@ int git_connect(int fd[2], char *url, const char *prog) @@ -737,14 +737,9 @@ int git_connect(int fd[2], char *url, const char *prog)

int finish_connect(pid_t pid)
{
int ret;

for (;;) {
ret = waitpid(pid, NULL, 0);
if (!ret)
break;
while (waitpid(pid, NULL, 0) < 0) {
if (errno != EINTR)
break;
return -1;
}
return ret;
return 0;
}

Loading…
Cancel
Save