From a8f6855f48fd474719e92eecc66c29a28fdc0f46 Mon Sep 17 00:00:00 2001 From: Stephen Boyd Date: Fri, 26 Apr 2019 16:51:57 -0700 Subject: format-patch: make --base patch-id output stable We weren't flushing the context each time we processed a hunk in the patch-id generation code in diff.c, but we were doing that when we generated "stable" patch-ids with the 'patch-id' tool. Let's port that similar logic over from patch-id.c into diff.c so we can get the same hash when we're generating patch-ids for 'format-patch --base=' types of command invocations. Cc: Xiaolong Ye Signed-off-by: Stephen Boyd Signed-off-by: Junio C Hamano --- diff.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'diff.h') diff --git a/diff.h b/diff.h index b20cbcc091..de24a04864 100644 --- a/diff.h +++ b/diff.h @@ -436,7 +436,8 @@ int run_diff_files(struct rev_info *revs, unsigned int option); int run_diff_index(struct rev_info *revs, int cached); int do_diff_cache(const struct object_id *, struct diff_options *); -int diff_flush_patch_id(struct diff_options *, struct object_id *, int); +int diff_flush_patch_id(struct diff_options *, struct object_id *, int, int); +void flush_one_hunk(struct object_id *, git_SHA_CTX *); int diff_result_code(struct diff_options *, int); -- cgit v1.2.3