Re: [PATCH v8 36/41] apply: don't print on stdout when be_silent is set
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 26, 2016, 19:41 UTC
- Message-ID
- <xmqq60rs191n.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20160627182429.31550-37-chriscool@tuxfamily.org>
Christian Couder <christian.couder@gmail.com> writes:
> This variable should prevent anything to be printed on both stderr > and stdout.
You have to mention that skipping the entire callchain, not just the "printing" part, is safe. I can see numstat_patch_list() is probably safe as it does not do any computation other than calling printf() and write_name_quoted(), but other two are not immediately obvious that what they compute are only used for their own printing and there is no other side effects left to affect what happens after this function returns.
Show 26 quoted lines
> Signed-off-by: Christian Couder <chriscool@tuxfamily.org> > --- > apply.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/apply.c b/apply.c > index 1435f85..e2acc18 100644 > --- a/apply.c > +++ b/apply.c > @@ -4698,13 +4698,13 @@ static int apply_patch(struct apply_state *state, > goto end; > } > > - if (state->diffstat) > + if (state->diffstat && !state->be_silent) > stat_patch_list(state, list); > > - if (state->numstat) > + if (state->numstat && !state->be_silent) > numstat_patch_list(state, list); > > - if (state->summary) > + if (state->summary && !state->be_silent) > summary_patch_list(list); > > end: