diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-14 17:59:17 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-14 17:59:17 -0700 |
commit | e68b6f1525c670f474d735009fec419473df0962 (patch) | |
tree | c09b5a31f4557e0008ebe4da49f1b10b0765a944 | |
parent | c0fd1f517efeb67df32b8d4ffa209afab14be436 (diff) | |
download | git-e68b6f1525c670f474d735009fec419473df0962.tar.gz git-e68b6f1525c670f474d735009fec419473df0962.tar.xz |
Split up "diff_format" into "format" and "line_termination".
This removes the separate "formats" for name and name-with-zero-
termination.
It also removes the difference between HUMAN and MACHINE formats, and
they both become DIFF_FORMAT_RAW, with the difference being just in the
line and inter-filename termination.
It also makes the code easier to understand.
-rw-r--r-- | diff-cache.c | 11 | ||||
-rw-r--r-- | diff-files.c | 9 | ||||
-rw-r--r-- | diff-helper.c | 2 | ||||
-rw-r--r-- | diff-stages.c | 9 | ||||
-rw-r--r-- | diff-tree.c | 15 | ||||
-rw-r--r-- | diff.c | 12 | ||||
-rw-r--r-- | diff.h | 6 |
7 files changed, 25 insertions, 39 deletions
diff --git a/diff-cache.c b/diff-cache.c index e6373b348..e3c4c8155 100644 --- a/diff-cache.c +++ b/diff-cache.c @@ -2,7 +2,8 @@ #include "diff.h" static int cached_only = 0; -static int diff_output_format = DIFF_FORMAT_HUMAN; +static int diff_output_format = DIFF_FORMAT_RAW; +static int diff_line_termination = '\n'; static int match_nonexisting = 0; static int detect_rename = 0; static int find_copies_harder = 0; @@ -226,17 +227,13 @@ int main(int argc, const char **argv) continue; } if (!strcmp(arg, "-z")) { - diff_output_format = DIFF_FORMAT_MACHINE; + diff_line_termination = 0; continue; } if (!strcmp(arg, "--name-only")) { diff_output_format = DIFF_FORMAT_NAME; continue; } - if (!strcmp(arg, "--name-only-z")) { - diff_output_format = DIFF_FORMAT_NAME_Z; - continue; - } if (!strcmp(arg, "-R")) { diff_setup_opt |= DIFF_SETUP_REVERSE; continue; @@ -292,6 +289,6 @@ int main(int argc, const char **argv) pickaxe, pickaxe_opts, diff_break_opt, orderfile, diff_filter); - diff_flush(diff_output_format); + diff_flush(diff_output_format, diff_line_termination); return ret; } diff --git a/diff-files.c b/diff-files.c index 4e7d9673c..39dd54f80 100644 --- a/diff-files.c +++ b/diff-files.c @@ -11,7 +11,8 @@ static const char *diff_files_usage = "[<common diff options>] [<path>...]" COMMON_DIFF_OPTIONS_HELP; -static int diff_output_format = DIFF_FORMAT_HUMAN; +static int diff_output_format = DIFF_FORMAT_RAW; +static int diff_line_termination = '\n'; static int detect_rename = 0; static int find_copies_harder = 0; static int diff_setup_opt = 0; @@ -57,11 +58,9 @@ int main(int argc, const char **argv) else if (!strcmp(argv[1], "-s")) ; /* no-op */ else if (!strcmp(argv[1], "-z")) - diff_output_format = DIFF_FORMAT_MACHINE; + diff_line_termination = 0; else if (!strcmp(argv[1], "--name-only")) diff_output_format = DIFF_FORMAT_NAME; - else if (!strcmp(argv[1], "--name-only-z")) - diff_output_format = DIFF_FORMAT_NAME_Z; else if (!strcmp(argv[1], "-R")) diff_setup_opt |= DIFF_SETUP_REVERSE; else if (!strncmp(argv[1], "-S", 2)) @@ -153,6 +152,6 @@ int main(int argc, const char **argv) pickaxe, pickaxe_opts, diff_break_opt, orderfile, diff_filter); - diff_flush(diff_output_format); + diff_flush(diff_output_format, diff_line_termination); return 0; } diff --git a/diff-helper.c b/diff-helper.c index 63aff6969..6649fb548 100644 --- a/diff-helper.c +++ b/diff-helper.c @@ -17,7 +17,7 @@ static void flush_them(int ac, const char **av) diffcore_std_no_resolve(av + 1, pickaxe, pickaxe_opts, orderfile, diff_filter); - diff_flush(DIFF_FORMAT_PATCH); + diff_flush(DIFF_FORMAT_PATCH, '\n'); } static const char *diff_helper_usage = diff --git a/diff-stages.c b/diff-stages.c index 8d86d7417..cbaba552b 100644 --- a/diff-stages.c +++ b/diff-stages.c @@ -5,7 +5,8 @@ #include "cache.h" #include "diff.h" -static int diff_output_format = DIFF_FORMAT_HUMAN; +static int diff_output_format = DIFF_FORMAT_RAW; +static int diff_line_termination = '\n'; static int detect_rename = 0; static int find_copies_harder = 0; static int diff_setup_opt = 0; @@ -87,11 +88,9 @@ int main(int ac, const char **av) else if (!strcmp(arg, "--find-copies-harder")) find_copies_harder = 1; else if (!strcmp(arg, "-z")) - diff_output_format = DIFF_FORMAT_MACHINE; + diff_line_termination = 0; else if (!strcmp(arg, "--name-only")) diff_output_format = DIFF_FORMAT_NAME; - else if (!strcmp(arg, "--name-only-z")) - diff_output_format = DIFF_FORMAT_NAME_Z; else if (!strcmp(arg, "-R")) diff_setup_opt |= DIFF_SETUP_REVERSE; else if (!strncmp(arg, "-S", 2)) @@ -126,6 +125,6 @@ int main(int ac, const char **av) diff_break_opt, orderfile, diff_filter); - diff_flush(diff_output_format); + diff_flush(diff_output_format, diff_line_termination); return 0; } diff --git a/diff-tree.c b/diff-tree.c index 4e80526af..5b9467d58 100644 --- a/diff-tree.c +++ b/diff-tree.c @@ -9,7 +9,8 @@ static int ignore_merges = 1; static int recursive = 0; static int show_tree_entry_in_recursive = 0; static int read_stdin = 0; -static int diff_output_format = DIFF_FORMAT_HUMAN; +static int diff_output_format = DIFF_FORMAT_RAW; +static int diff_line_termination = '\n'; static int detect_rename = 0; static int find_copies_harder = 0; static int diff_setup_opt = 0; @@ -276,14 +277,14 @@ static int call_diff_flush(void) orderfile, diff_filter); if (diff_queue_is_empty()) { - diff_flush(DIFF_FORMAT_NO_OUTPUT); + diff_flush(DIFF_FORMAT_NO_OUTPUT, diff_line_termination); return 0; } if (header) { - printf("%s%c", header, diff_output_format == DIFF_FORMAT_MACHINE ? 0 : '\n'); + printf("%s%c", header, diff_line_termination); header = NULL; } - diff_flush(diff_output_format); + diff_flush(diff_output_format, diff_line_termination); return 1; } @@ -486,12 +487,8 @@ int main(int argc, const char **argv) diff_output_format = DIFF_FORMAT_NAME; continue; } - if (!strcmp(arg, "--name-only-z")) { - diff_output_format = DIFF_FORMAT_NAME_Z; - continue; - } if (!strcmp(arg, "-z")) { - diff_output_format = DIFF_FORMAT_MACHINE; + diff_line_termination = 0; continue; } if (!strcmp(arg, "-m")) { @@ -977,16 +977,14 @@ static void diff_resolve_rename_copy(void) diff_debug_queue("resolve-rename-copy done", q); } -void diff_flush(int diff_output_style) +void diff_flush(int diff_output_style, int line_termination) { struct diff_queue_struct *q = &diff_queued_diff; int i; - int line_termination = '\n'; int inter_name_termination = '\t'; - if (diff_output_style == DIFF_FORMAT_MACHINE || - diff_output_style == DIFF_FORMAT_NAME_Z) - line_termination = inter_name_termination = 0; + if (!line_termination) + inter_name_termination = 0; for (i = 0; i < q->nr; i++) { struct diff_filepair *p = q->queue[i]; @@ -999,13 +997,11 @@ void diff_flush(int diff_output_style) case DIFF_FORMAT_PATCH: diff_flush_patch(p); break; - case DIFF_FORMAT_HUMAN: - case DIFF_FORMAT_MACHINE: + case DIFF_FORMAT_RAW: diff_flush_raw(p, line_termination, inter_name_termination); break; case DIFF_FORMAT_NAME: - case DIFF_FORMAT_NAME_Z: diff_flush_name(p, line_termination); break; } @@ -75,13 +75,11 @@ extern void diffcore_std_no_resolve(const char **paths, extern int diff_queue_is_empty(void); -#define DIFF_FORMAT_HUMAN 0 -#define DIFF_FORMAT_MACHINE 1 +#define DIFF_FORMAT_RAW 1 #define DIFF_FORMAT_PATCH 2 #define DIFF_FORMAT_NO_OUTPUT 3 #define DIFF_FORMAT_NAME 4 -#define DIFF_FORMAT_NAME_Z 5 -extern void diff_flush(int output_style); +extern void diff_flush(int output_style, int line_terminator); #endif /* DIFF_H */ |