Re: [PATCH] format-patch: respect --stat when explicitly specified
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Nov 6, 2018, 15:56 UTC
- Message-ID
- <CACsJy8AjY1-KT9x_CXuo+L3-g947OaC5Av0KwuJF-Xkz6VMiPQ@mail.gmail.com>
- In-Reply-To
- <20181106104811.14625-1-leif.lindholm@linaro.org>
On Tue, Nov 6, 2018 at 11:48 AM Leif Lindholm <leif.lindholm@linaro.org> wrote:
Show 33 quoted lines
>
> Commit 43662b23abbd
> ("format-patch: keep cover-letter diffstat wrapped in 72 columns") made
> format-patch keep the diffstat to within 72 characters. However, it does
> this even when --stat is explicitly set on the command line.
>
> Make it possible to explicitly override the new mechanism, using --stat,
> matching the functionality before this change. This also matches the
> output in the case of non-cover-letter files.
>
> Cc: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
> Cc: Junio C Hamano <gitster@pobox.com>
> Reported-by: Laszlo Ersek <lersek@redhat.com>
> Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
> ---
>
> Note:
> In TianoCore we have LotsOfGloriousFilesNamedInReallyLongCamelCase, so
> our official submission guidelines specify the use of --stat.
>
> builtin/log.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/builtin/log.c b/builtin/log.c
> index 061d4fd86..07e6ae2c1 100644
> --- a/builtin/log.c
> +++ b/builtin/log.c
> @@ -1009,7 +1009,8 @@ static void show_diffstat(struct rev_info *rev,
>
> memcpy(&opts, &rev->diffopt, sizeof(opts));
> opts.output_format = DIFF_FORMAT_SUMMARY | DIFF_FORMAT_DIFFSTAT;
> - opts.stat_width = MAIL_DEFAULT_WRAP;
> + if (rev->diffopt.stat_width == -1)I don't think we get -1 here when stat_width is not defined. The "undefined" value is zero but I'm pretty sure we get MAIL_DEFAULT_WRAP in here unless you specify --stat.
So I think you can just drop the below assignment. But if you want to be on the safe side, check for zero stat_width instead of -1 and set MAIL_DEFAULT_WRAP.
> + opts.stat_width = MAIL_DEFAULT_WRAP;
How about a test to make sure this will not be broken in future?
Show 5 quoted lines
> > diff_setup_done(&opts); > > -- > 2.11.0
-- Duy