Code

[PATCH] Adjust diff-helper to diff-tree -v -z changes.
authorJunio C Hamano <junkio@cox.net>
Sat, 28 May 2005 04:05:38 +0000 (21:05 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Sun, 29 May 2005 18:40:40 +0000 (11:40 -0700)
The latest change to diff-tree -z output adds an extra line
termination after non diff-raw material (the header and the
commit message).  To compensate for this change, stop adding the
output termination of our own.  "diff-tree -v -z" piped to
"diff-helper -z" would give different result from "diff-tree -v"
piped to "diff-helper" without this change.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
diff-helper.c

index 6456405b53bc9ff419e1133aa4da816fe761d911..5ad2273bf063fb431f095de2d58ebdfb78814d3b 100644 (file)
@@ -15,6 +15,7 @@ static const char *diff_helper_usage =
 
 int main(int ac, const char **av) {
        struct strbuf sb;
+       const char *garbage_flush_format;
 
        strbuf_init(&sb);
 
@@ -30,6 +31,8 @@ int main(int ac, const char **av) {
                        usage(diff_helper_usage);
                ac--; av++;
        }
+       garbage_flush_format = (line_termination == 0) ? "%s" : "%s\n";
+
        /* the remaining parameters are paths patterns */
 
        diff_setup(0);
@@ -134,7 +137,7 @@ int main(int ac, const char **av) {
                if (pickaxe)
                        diffcore_pickaxe(pickaxe, pickaxe_opts);
                diff_flush(DIFF_FORMAT_PATCH, 0);
-               printf("%s\n", sb.buf);
+               printf(garbage_flush_format, sb.buf);
        }
        if (1 < ac)
                diffcore_pathspec(av + 1);