git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Make git-diff-tree indicate when it flushes
@ 2006-05-29 12:24 Paul Mackerras
  2006-05-29 18:38 ` Junio C Hamano
  0 siblings, 1 reply; 7+ messages in thread
From: Paul Mackerras @ 2006-05-29 12:24 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

There are times when gitk needs to know that the commits it has sent
to git-diff-tree --stdin did not match, and it needs to know in a
timely fashion even if none of them match.  At the moment,
git-diff-tree outputs nothing for non-matching commits, so it is
impossible for gitk to distinguish between git-diff-tree being slow
and git-diff-tree saying no.

This makes git-diff-tree output a blank line in response to a blank
line in its input (which already causes git-diff-tree to flush its
output buffers).  Gitk, or other users of git-diff-tree --stdin, can
use the blank line to indicate that git-diff-tree has processed all
the commits on its input up to the input blank line, and any commits
that have not been output do not match.

Signed-off-by: Paul Mackerras <paulus@samba.org>
---
diff --git a/builtin-diff-tree.c b/builtin-diff-tree.c
index cc53b81..dbe5737 100644
--- a/builtin-diff-tree.c
+++ b/builtin-diff-tree.c
@@ -139,9 +139,10 @@ int cmd_diff_tree(int argc, const char *
 		opt->diffopt.setup |= (DIFF_SETUP_USE_SIZE_CACHE |
 				       DIFF_SETUP_USE_CACHE);
 	while (fgets(line, sizeof(line), stdin))
-		if (line[0] == '\n')
+		if (line[0] == '\n') {
+			putchar('\n');
 			fflush(stdout);
-		else
+		} else
 			diff_tree_stdin(line);
 
 	return 0;

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

end of thread, other threads:[~2006-05-29 22:32 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-29 12:24 [PATCH] Make git-diff-tree indicate when it flushes Paul Mackerras
2006-05-29 18:38 ` Junio C Hamano
2006-05-29 22:02   ` Paul Mackerras
2006-05-29 22:10     ` Junio C Hamano
2006-05-29 22:18       ` Junio C Hamano
2006-05-29 22:32         ` Paul Mackerras
2006-05-29 22:31       ` Paul Mackerras

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).