git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 1/2] diff: Only count lines in show_shortstats
@ 2012-06-15 21:50 Alexander Strasser
  2012-06-15 21:51 ` [PATCH v3 2/2] t4012: Check binary only change with --shortstat Alexander Strasser
  2012-06-15 22:00 ` [PATCH v3 1/2] diff: Only count lines in show_shortstats Junio C Hamano
  0 siblings, 2 replies; 3+ messages in thread
From: Alexander Strasser @ 2012-06-15 21:50 UTC (permalink / raw)
  To: git; +Cc: Zbigniew Jędrzejewski-Szmek, mj, Junio C Hamano

Do not mix byte and line counts. Binary files have byte counts;
skip them when accumulating line insertions/deletions.

The regression was introduced in e18872b.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
---
 diff.c                 | 2 +-
 t/t4012-diff-binary.sh | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/diff.c b/diff.c
index 77edd50..1a594df 100644
--- a/diff.c
+++ b/diff.c
@@ -1700,7 +1700,7 @@ static void show_shortstats(struct diffstat_t *data, struct diff_options *option
 			continue;
 		if (!data->files[i]->is_renamed && (added + deleted == 0)) {
 			total_files--;
-		} else {
+		} else if (!data->files[i]->is_binary) { /* don't count bytes */
 			adds += added;
 			dels += deleted;
 		}
diff --git a/t/t4012-diff-binary.sh b/t/t4012-diff-binary.sh
index 8b4e80d..7d03c1d 100755
--- a/t/t4012-diff-binary.sh
+++ b/t/t4012-diff-binary.sh
@@ -36,6 +36,12 @@ test_expect_success '"apply --stat" output for binary file change' '
 	test_i18ncmp expected current
 '
 
+test_expect_success 'diff --shortstat output for binary file change' '
+	echo " 4 files changed, 2 insertions(+), 2 deletions(-)" >expected &&
+	git diff --shortstat >current &&
+	test_i18ncmp expected current
+'
+
 test_expect_success 'apply --numstat notices binary file change' '
 	git diff >diff &&
 	git apply --numstat <diff >current &&
-- 
1.7.10.2.552.gaa3bb87

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH v3 2/2] t4012: Check binary only change with --shortstat
  2012-06-15 21:50 [PATCH v3 1/2] diff: Only count lines in show_shortstats Alexander Strasser
@ 2012-06-15 21:51 ` Alexander Strasser
  2012-06-15 22:00 ` [PATCH v3 1/2] diff: Only count lines in show_shortstats Junio C Hamano
  1 sibling, 0 replies; 3+ messages in thread
From: Alexander Strasser @ 2012-06-15 21:51 UTC (permalink / raw)
  To: git; +Cc: Zbigniew Jędrzejewski-Szmek, mj, Junio C Hamano

Expect to see files changed but with 0 insertions and 0 deletions,
because we do not count line changes for binary file modifications.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
---

  This patch can be squashed into the first one if desirable.

 t/t4012-diff-binary.sh | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/t/t4012-diff-binary.sh b/t/t4012-diff-binary.sh
index 7d03c1d..6cebb39 100755
--- a/t/t4012-diff-binary.sh
+++ b/t/t4012-diff-binary.sh
@@ -42,6 +42,12 @@ test_expect_success 'diff --shortstat output for binary file change' '
 	test_i18ncmp expected current
 '
 
+test_expect_success 'diff --shortstat output for binary file change only' '
+	echo " 1 file changed, 0 insertions(+), 0 deletions(-)" >expected &&
+	git diff --shortstat -- b >current &&
+	test_i18ncmp expected current
+'
+
 test_expect_success 'apply --numstat notices binary file change' '
 	git diff >diff &&
 	git apply --numstat <diff >current &&
-- 
1.7.10.2.552.gaa3bb87

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v3 1/2] diff: Only count lines in show_shortstats
  2012-06-15 21:50 [PATCH v3 1/2] diff: Only count lines in show_shortstats Alexander Strasser
  2012-06-15 21:51 ` [PATCH v3 2/2] t4012: Check binary only change with --shortstat Alexander Strasser
@ 2012-06-15 22:00 ` Junio C Hamano
  1 sibling, 0 replies; 3+ messages in thread
From: Junio C Hamano @ 2012-06-15 22:00 UTC (permalink / raw)
  To: Alexander Strasser; +Cc: git, Zbigniew Jędrzejewski-Szmek, mj

Alexander Strasser <eclipse7@gmx.net> writes:

> Do not mix byte and line counts. Binary files have byte counts;
> skip them when accumulating line insertions/deletions.
>
> The regression was introduced in e18872b.

Thanks for a last-minute fix.  Will apply directly to 'master'.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-06-15 22:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-06-15 21:50 [PATCH v3 1/2] diff: Only count lines in show_shortstats Alexander Strasser
2012-06-15 21:51 ` [PATCH v3 2/2] t4012: Check binary only change with --shortstat Alexander Strasser
2012-06-15 22:00 ` [PATCH v3 1/2] diff: Only count lines in show_shortstats Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).