diff: convert diff_flush_patch_id to struct object_id

Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Brandon Williams 2017-05-30 10:30:54 -07:00 committed by Junio C Hamano
parent 34f3c0ebfb
commit bd25f28876
3 changed files with 8 additions and 8 deletions

12
diff.c
View File

@ -4584,7 +4584,7 @@ static void patch_id_add_mode(git_SHA_CTX *ctx, unsigned mode)
} }
/* returns 0 upon success, and writes result into sha1 */ /* returns 0 upon success, and writes result into sha1 */
static int diff_get_patch_id(struct diff_options *options, unsigned char *sha1, int diff_header_only) static int diff_get_patch_id(struct diff_options *options, struct object_id *oid, int diff_header_only)
{ {
struct diff_queue_struct *q = &diff_queued_diff; struct diff_queue_struct *q = &diff_queued_diff;
int i; int i;
@ -4656,9 +4656,9 @@ static int diff_get_patch_id(struct diff_options *options, unsigned char *sha1,
if (diff_filespec_is_binary(p->one) || if (diff_filespec_is_binary(p->one) ||
diff_filespec_is_binary(p->two)) { diff_filespec_is_binary(p->two)) {
git_SHA1_Update(&ctx, oid_to_hex(&p->one->oid), git_SHA1_Update(&ctx, oid_to_hex(&p->one->oid),
40); GIT_SHA1_HEXSZ);
git_SHA1_Update(&ctx, oid_to_hex(&p->two->oid), git_SHA1_Update(&ctx, oid_to_hex(&p->two->oid),
40); GIT_SHA1_HEXSZ);
continue; continue;
} }
@ -4671,15 +4671,15 @@ static int diff_get_patch_id(struct diff_options *options, unsigned char *sha1,
p->one->path); p->one->path);
} }
git_SHA1_Final(sha1, &ctx); git_SHA1_Final(oid->hash, &ctx);
return 0; return 0;
} }
int diff_flush_patch_id(struct diff_options *options, unsigned char *sha1, int diff_header_only) int diff_flush_patch_id(struct diff_options *options, struct object_id *oid, int diff_header_only)
{ {
struct diff_queue_struct *q = &diff_queued_diff; struct diff_queue_struct *q = &diff_queued_diff;
int i; int i;
int result = diff_get_patch_id(options, sha1, diff_header_only); int result = diff_get_patch_id(options, oid, diff_header_only);
for (i = 0; i < q->nr; i++) for (i = 0; i < q->nr; i++)
diff_free_filepair(q->queue[i]); diff_free_filepair(q->queue[i]);

2
diff.h
View File

@ -354,7 +354,7 @@ extern int run_diff_files(struct rev_info *revs, unsigned int option);
extern int run_diff_index(struct rev_info *revs, int cached); extern int run_diff_index(struct rev_info *revs, int cached);
extern int do_diff_cache(const struct object_id *, struct diff_options *); extern int do_diff_cache(const struct object_id *, struct diff_options *);
extern int diff_flush_patch_id(struct diff_options *, unsigned char *, int); extern int diff_flush_patch_id(struct diff_options *, struct object_id *, int);
extern int diff_result_code(struct diff_options *, int); extern int diff_result_code(struct diff_options *, int);

View File

@ -22,7 +22,7 @@ int commit_patch_id(struct commit *commit, struct diff_options *options,
else else
diff_root_tree_sha1(commit->object.oid.hash, "", options); diff_root_tree_sha1(commit->object.oid.hash, "", options);
diffcore_std(options); diffcore_std(options);
return diff_flush_patch_id(options, oid->hash, diff_header_only); return diff_flush_patch_id(options, oid, diff_header_only);
} }
/* /*