On Fri, Apr 26, 2024 at 04:23:33PM -0400, Jeff King wrote: > On Thu, Apr 25, 2024 at 05:04:45AM +0200, Rubén Justo wrote: > > > > The test_cmp output looks > > > like this: > > > > > > -(1/1) Stage addition [y,n,q,a,d,e,p,?]? Unknown command 'W' (use '?' for help) > > > -(1/1) Stage addition [y,n,q,a,d,e,p,?]? > > > +(1/1) Stage addition [y,n,q,a,d,e,p,?]? (1/1) Stage addition [y,n,q,a,d,e,p,?]? > > > +Unknown command 'W' (use '?' for help) > > > > > > which makes me suspect a race. Perhaps because the prompt is going to > > > stdout, but the "Unknown command" message goes to stderr? > > > > I have to read the thread pointed by Eric, but my knee-jerk reaction has > > been to think in something like: > > > > diff --git a/add-patch.c b/add-patch.c > > index 447e8166d2..0090543f89 100644 > > --- a/add-patch.c > > +++ b/add-patch.c > > @@ -292,6 +292,7 @@ static void err(struct add_p_state *s, const char *fmt, ...) > > { > > va_list args; > > > > va_start(args, fmt); > > + fflush(stdout); > > fputs(s->s.error_color, stderr); > > vfprintf(stderr, fmt, args); > > I think the "just send it all to stdout" approach makes the most sense > here, but in case we don't do that: I don't think this will fix it. In > the output above it is the "Unknown command" output which is delayed, > which is sent to stderr via err(). Very true. I'm happy with what Junio has just queued. I do not plan to send a new iteration, unless a new test break appears :-) Thanks, all.