Skip to content

Commit

Permalink
diff.c: return filepair from diff_unmerge()
Browse files Browse the repository at this point in the history
The underlying diff_queue() returns diff_filepair so that the caller can
further add information to it, and the helper function diff_unmerge()
utilizes the feature itself, but does not expose it to its callers, which
was kind of selfish.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Junio C Hamano committed Apr 24, 2011
1 parent 3749fde commit 76399c0
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
13 changes: 8 additions & 5 deletions diff.c
Original file line number Diff line number Diff line change
Expand Up @@ -4308,20 +4308,23 @@ void diff_change(struct diff_options *options,
DIFF_OPT_SET(options, HAS_CHANGES);
}

void diff_unmerge(struct diff_options *options,
const char *path,
unsigned mode, const unsigned char *sha1)
struct diff_filepair *diff_unmerge(struct diff_options *options,
const char *path,
unsigned mode, const unsigned char *sha1)
{
struct diff_filepair *pair;
struct diff_filespec *one, *two;

if (options->prefix &&
strncmp(path, options->prefix, options->prefix_length))
return;
return NULL;

one = alloc_filespec(path);
two = alloc_filespec(path);
fill_filespec(one, sha1, mode);
diff_queue(&diff_queued_diff, one, two)->is_unmerged = 1;
pair = diff_queue(&diff_queued_diff, one, two);
pair->is_unmerged = 1;
return pair;
}

static char *run_textconv(const char *pgm, struct diff_filespec *spec,
Expand Down
2 changes: 1 addition & 1 deletion diff.h
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ extern void diff_change(struct diff_options *,
const char *fullpath,
unsigned dirty_submodule1, unsigned dirty_submodule2);

extern void diff_unmerge(struct diff_options *,
extern struct diff_filepair *diff_unmerge(struct diff_options *,
const char *path,
unsigned mode,
const unsigned char *sha1);
Expand Down

0 comments on commit 76399c0

Please sign in to comment.