Code

git-fetch-pack: close output fd after dup'ing the input
authorLinus Torvalds <torvalds@g5.osdl.org>
Thu, 14 Jul 2005 02:40:06 +0000 (19:40 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Thu, 14 Jul 2005 02:40:06 +0000 (19:40 -0700)
With the socket case, the input and output fd's might end up being the same,
so we want to dup the other before we close either of them.

fetch-pack.c

index ec5bad89cdb3f6eae038877856f2eefb1125bf6f..3475ea380a29495269ac64fa9e4ff797b9b8687c 100644 (file)
@@ -95,9 +95,9 @@ static int fetch_pack(int fd[2], int nr_match, char **match)
        if (pid < 0)
                die("git-fetch-pack: unable to fork off git-unpack-objects");
        if (!pid) {
-               close(fd[1]);
                dup2(fd[0], 0);
                close(fd[0]);
+               close(fd[1]);
                execlp("git-unpack-objects", "git-unpack-objects", NULL);
                die("git-unpack-objects exec failed");
        }