Thanks for the fix here.
On Thu, 2019-01-24 at 07:34 -0500, Jeff King wrote:
> The --stat of a combined diff is defined as the first-parent stat,
> going all the way back to 965f803c32 (combine-diff: show diffstat
> with
> the first parent., 2006-04-17).
>
> Naturally, we gave --numstat the same treatment in 74e2abe5b7 (diff
> --numstat, 2006-10-12).
>
> But --shortstat, which is really just the final line of --stat, does
> nothing, which produces confusing results:
>
> $ git show --oneline --stat eab7584e37
> eab7584e37 Merge branch 'en/show-ref-doc-fix'
>
> Documentation/git-show-ref.txt | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> $ git show --oneline --shortstat eab7584e37
> eab7584e37 Merge branch 'en/show-ref-doc-fix'
>
> [nothing! We'd expect to see the "1 file changed..." line]
>
> This patch teaches combine-diff to treats the two formats
> identically.
>
> Reported-by: David Turner <[email protected]>
> Signed-off-by: Jeff King <[email protected]>
> ---
> combine-diff.c | 1 +
> t/t4013-diff-various.sh | 1 +
> t/t4013/diff.diff-tree_--cc_--shortstat_master | 4 ++++
> 3 files changed, 6 insertions(+)
> create mode 100644 t/t4013/diff.diff-tree_--cc_--shortstat_master
>
> diff --git a/combine-diff.c b/combine-diff.c
> index b1d259d5a0..83ec3dfffa 100644
> --- a/combine-diff.c
> +++ b/combine-diff.c
> @@ -1325,6 +1325,7 @@ static const char *path_path(void *obj)
> * Diff stat formats which we always compute solely against the
> first parent.
> */
> #define STAT_FORMAT_MASK (DIFF_FORMAT_NUMSTAT \
> + | DIFF_FORMAT_SHORTSTAT \
> | DIFF_FORMAT_DIFFSTAT)
>
> /* find set of paths that every parent touches */
> diff --git a/t/t4013-diff-various.sh b/t/t4013-diff-various.sh
> index 7d985ff6b1..9ccdf08730 100755
> --- a/t/t4013-diff-various.sh
> +++ b/t/t4013-diff-various.sh
> @@ -239,6 +239,7 @@ diff-tree --cc --stat --summary master
> # stat summary should show the diffstat and summary with the first
> parent
> diff-tree -c --stat --summary side
> diff-tree --cc --stat --summary side
> +diff-tree --cc --shortstat master
> # improved by Timo's patch
> diff-tree --cc --patch-with-stat master
> # improved by Timo's patch
> diff --git a/t/t4013/diff.diff-tree_--cc_--shortstat_master
> b/t/t4013/diff.diff-tree_--cc_--shortstat_master
> new file mode 100644
> index 0000000000..a4ca42df2a
> --- /dev/null
> +++ b/t/t4013/diff.diff-tree_--cc_--shortstat_master
> @@ -0,0 +1,4 @@
> +$ git diff-tree --cc --shortstat master
> +59d314ad6f356dd08601a4cd5e530381da3e3c64
> + 2 files changed, 5 insertions(+)
> +$