From: Jeff King Date: Fri, 09 Jan 2009 10:47:18 GMT Subject: Re: Funny: git -p submodule summary Message-ID: <20090109104718.GA11033@coredump.intra.peff.net> In-Reply-To: <496728B9.7090200@viscovery.net> On Fri, Jan 09, 2009 at 11:36:41AM +0100, Johannes Sixt wrote: > Ah, no, it would not survive. > > But there's a more serious problem why we cannot use start_async() in its > current form: It expects that there is a *function* that produces the > output; but here we don't have a function - output is produced by > *returning* (from setup_pager). Good point. > I'll test your other patch (that replaces the execvp in git.c by run_command). Note that it only covers the case of external commands. Hitting ctrl-c to interrupt git will still cause funniness. For that we need to intercept signals to call wait_for_pager(). But there is a slight snag: we also intercept signals elsewhere (e.g., for tempfile cleanup). So we need to start remembering the old signal handlers everywhere and chaining to them. -Peff