#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;
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;
pickaxe, pickaxe_opts,
diff_break_opt,
orderfile, diff_filter);
- diff_flush(diff_output_format);
+ diff_flush(diff_output_format, diff_line_termination);
return ret;
}
"[<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;
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))
pickaxe, pickaxe_opts,
diff_break_opt,
orderfile, diff_filter);
- diff_flush(diff_output_format);
+ diff_flush(diff_output_format, diff_line_termination);
return 0;
}
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 =
#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;
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))
diff_break_opt,
orderfile,
diff_filter);
- diff_flush(diff_output_format);
+ diff_flush(diff_output_format, diff_line_termination);
return 0;
}
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;
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;
}
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")) {
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];
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;
}
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 */