Browse Source

[PATCH] Clean up diff_setup() to make it more extensible.

This changes the argument of diff_setup() from an integer that
says if we are feeding reversed diff to a bitmask, so that later
global options can be added more easily.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
maint
Junio C Hamano 20 years ago committed by Linus Torvalds
parent
commit
19feebc8c3
  1. 6
      diff-cache.c
  2. 6
      diff-files.c
  3. 6
      diff-tree.c
  4. 5
      diff.c
  5. 12
      diff.h

6
diff-cache.c

@ -5,7 +5,7 @@ static int cached_only = 0; @@ -5,7 +5,7 @@ static int cached_only = 0;
static int diff_output_format = DIFF_FORMAT_HUMAN;
static int match_nonexisting = 0;
static int detect_rename = 0;
static int reverse_diff = 0;
static int diff_setup_opt = 0;
static int diff_score_opt = 0;
static const char *pickaxe = NULL;

@ -202,7 +202,7 @@ int main(int argc, const char **argv) @@ -202,7 +202,7 @@ int main(int argc, const char **argv)
continue;
}
if (!strcmp(arg, "-R")) {
reverse_diff = 1;
diff_setup_opt |= DIFF_SETUP_REVERSE;
continue;
}
if (!strcmp(arg, "-S")) {
@ -224,7 +224,7 @@ int main(int argc, const char **argv) @@ -224,7 +224,7 @@ int main(int argc, const char **argv)
usage(diff_cache_usage);

/* The rest is for paths restriction. */
diff_setup(reverse_diff);
diff_setup(diff_setup_opt);

mark_merge_entries();


6
diff-files.c

@ -11,7 +11,7 @@ static const char *diff_files_usage = @@ -11,7 +11,7 @@ static const char *diff_files_usage =

static int diff_output_format = DIFF_FORMAT_HUMAN;
static int detect_rename = 0;
static int reverse_diff = 0;
static int diff_setup_opt = 0;
static int diff_score_opt = 0;
static const char *pickaxe = NULL;
static int silent = 0;
@ -51,7 +51,7 @@ int main(int argc, const char **argv) @@ -51,7 +51,7 @@ int main(int argc, const char **argv)
else if (!strcmp(argv[1], "-z"))
diff_output_format = DIFF_FORMAT_MACHINE;
else if (!strcmp(argv[1], "-R"))
reverse_diff = 1;
diff_setup_opt |= DIFF_SETUP_REVERSE;
else if (!strcmp(argv[1], "-S"))
pickaxe = argv[1] + 2;
else if (!strncmp(argv[1], "-M", 2)) {
@ -75,7 +75,7 @@ int main(int argc, const char **argv) @@ -75,7 +75,7 @@ int main(int argc, const char **argv)
exit(1);
}

diff_setup(reverse_diff);
diff_setup(diff_setup_opt);

for (i = 0; i < entries; i++) {
struct stat st;

6
diff-tree.c

@ -10,7 +10,7 @@ static int show_tree_entry_in_recursive = 0; @@ -10,7 +10,7 @@ static int show_tree_entry_in_recursive = 0;
static int read_stdin = 0;
static int diff_output_format = DIFF_FORMAT_HUMAN;
static int detect_rename = 0;
static int reverse_diff = 0;
static int diff_setup_opt = 0;
static int diff_score_opt = 0;
static const char *pickaxe = NULL;
static const char *header = NULL;
@ -255,7 +255,7 @@ static int diff_tree_sha1(const unsigned char *old, const unsigned char *new, co @@ -255,7 +255,7 @@ static int diff_tree_sha1(const unsigned char *old, const unsigned char *new, co

static void call_diff_setup(void)
{
diff_setup(reverse_diff);
diff_setup(diff_setup_opt);
}

static int call_diff_flush(void)
@ -497,7 +497,7 @@ int main(int argc, const char **argv) @@ -497,7 +497,7 @@ int main(int argc, const char **argv)
continue;
}
if (!strcmp(arg, "-R")) {
reverse_diff = 1;
diff_setup_opt |= DIFF_SETUP_REVERSE;
continue;
}
if (!strcmp(arg, "-p")) {

5
diff.c

@ -492,9 +492,10 @@ static void run_diff(const char *name, @@ -492,9 +492,10 @@ static void run_diff(const char *name,
run_external_diff(pgm, name, other, one, two, xfrm_msg);
}

void diff_setup(int reverse_diff_)
void diff_setup(int flags)
{
reverse_diff = reverse_diff_;
if (flags & DIFF_SETUP_REVERSE)
reverse_diff = 1;
}

struct diff_queue_struct diff_queued_diff;

12
diff.h

@ -28,11 +28,8 @@ extern void diff_unmerge(const char *path); @@ -28,11 +28,8 @@ extern void diff_unmerge(const char *path);

extern int diff_scoreopt_parse(const char *opt);

#define DIFF_FORMAT_HUMAN 0
#define DIFF_FORMAT_MACHINE 1
#define DIFF_FORMAT_PATCH 2
#define DIFF_FORMAT_NO_OUTPUT 3
extern void diff_setup(int reverse);
#define DIFF_SETUP_REVERSE 1
extern void diff_setup(int flags);

#define DIFF_DETECT_RENAME 1
#define DIFF_DETECT_COPY 2
@ -44,6 +41,11 @@ extern void diffcore_pathspec(const char **pathspec); @@ -44,6 +41,11 @@ extern void diffcore_pathspec(const char **pathspec);

extern int diff_queue_is_empty(void);

#define DIFF_FORMAT_HUMAN 0
#define DIFF_FORMAT_MACHINE 1
#define DIFF_FORMAT_PATCH 2
#define DIFF_FORMAT_NO_OUTPUT 3

extern void diff_flush(int output_style, int resolve_rename_copy);

#endif /* DIFF_H */

Loading…
Cancel
Save