Am 9/17/2010 13:31, schrieb Jens Lehmann: > But I think I found the real issue, the stdout of the forked "git fetch" > was swallowed due to a copy & paste bug while the actual fetch commands > were executed nonetheless. Please try the following change: > > > diff --git a/submodule.c b/submodule.c > index e2c3bae..4fb1071 100644 > --- a/submodule.c > +++ b/submodule.c > @@ -260,7 +260,8 @@ int fetch_populated_submodules(int forced) > cp.env = local_repo_env; > cp.git_cmd = 1; > cp.no_stdin = 1; > - cp.out = -1; > + cp.out = 1; > + cp.err = 1; This cannot be correct. Subsequent code reads the stdout of the child process, i.e., you want a pipe; hence, cp.out = -1 is correct (this requests a pipe; later code correctly closes cp.out). As far as stderr of the child is concerned, if you only want to re-use the standard error of the parent, then not assigning anything to cp.err is correct (it was set to 0 in the memset before this hunk). But perhaps you want to achieve something else? -- Hannes -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html