aboutsummaryrefslogtreecommitdiff
path: root/apply.c
diff options
context:
space:
mode:
authorChristian Couder <christian.couder@gmail.com>2016-09-04 22:18:31 +0200
committerJunio C Hamano <gitster@pobox.com>2016-09-07 12:29:54 -0700
commitb4290342dd2d957cbcdb100c7d847802746b0730 (patch)
tree95307bc8408099bf117f0969b9e9927ebd5bb631 /apply.c
parent7e1bad24e3b7f220813d8a449f19652113edb923 (diff)
downloadgit-b4290342dd2d957cbcdb100c7d847802746b0730.tar.gz
git-b4290342dd2d957cbcdb100c7d847802746b0730.tar.xz
apply: pass apply state to build_fake_ancestor()
To libify git apply functionality, we will need to read from a different index file in get_current_sha1(). This index file will be stored in "struct apply_state", so let's pass the state to build_fake_ancestor() which will later pass it to get_current_sha1(). Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'apply.c')
-rw-r--r--apply.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/apply.c b/apply.c
index ae220be7f..a9a743cf9 100644
--- a/apply.c
+++ b/apply.c
@@ -4042,7 +4042,7 @@ static int preimage_sha1_in_gitlink_patch(struct patch *p, unsigned char sha1[20
}
/* Build an index that contains the just the files needed for a 3way merge */
-static int build_fake_ancestor(struct patch *list, const char *filename)
+static int build_fake_ancestor(struct apply_state *state, struct patch *list)
{
struct patch *patch;
struct index_state result = { NULL };
@@ -4089,12 +4089,13 @@ static int build_fake_ancestor(struct patch *list, const char *filename)
}
}
- hold_lock_file_for_update(&lock, filename, LOCK_DIE_ON_ERROR);
+ hold_lock_file_for_update(&lock, state->fake_ancestor, LOCK_DIE_ON_ERROR);
res = write_locked_index(&result, &lock, COMMIT_LOCK);
discard_index(&result);
if (res)
- return error("Could not write temporary index to %s", filename);
+ return error("Could not write temporary index to %s",
+ state->fake_ancestor);
return 0;
}
@@ -4709,7 +4710,7 @@ static int apply_patch(struct apply_state *state,
}
if (state->fake_ancestor &&
- build_fake_ancestor(list, state->fake_ancestor)) {
+ build_fake_ancestor(state, list)) {
res = -128;
goto end;
}