summaryrefslogtreecommitdiff
path: root/sequencer.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2019-11-10 09:02:12 (GMT)
committerJunio C Hamano <gitster@pobox.com>2019-11-10 09:02:12 (GMT)
commit5c8c0a0d78b0e0ee50ba13823f0cfbee05334461 (patch)
tree8b4ebc4676440e47f24351824e16a072796772d1 /sequencer.c
parentb75ba9bbd13877ff3351e150d3d053baec81f0db (diff)
parent4627bc777e9ade5e3a85d6b8e8630fc4b6e2f8f6 (diff)
downloadgit-5c8c0a0d78b0e0ee50ba13823f0cfbee05334461.zip
git-5c8c0a0d78b0e0ee50ba13823f0cfbee05334461.tar.gz
git-5c8c0a0d78b0e0ee50ba13823f0cfbee05334461.tar.bz2
Merge branch 'pw/post-commit-from-sequencer'
"rebase -i" ceased to run post-commit hook by mistake in an earlier update, which has been corrected. * pw/post-commit-from-sequencer: sequencer: run post-commit hook move run_commit_hook() to libgit and use it there sequencer.h fix placement of #endif t3404: remove uneeded calls to set_fake_editor t3404: set $EDITOR in subshell t3404: remove unnecessary subshell
Diffstat (limited to 'sequencer.c')
-rw-r--r--sequencer.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/sequencer.c b/sequencer.c
index 9d5964f..8952cfa 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -1126,25 +1126,22 @@ static int run_prepare_commit_msg_hook(struct repository *r,
struct strbuf *msg,
const char *commit)
{
- struct argv_array hook_env = ARGV_ARRAY_INIT;
- int ret;
- const char *name;
+ int ret = 0;
+ const char *name, *arg1 = NULL, *arg2 = NULL;
name = git_path_commit_editmsg();
if (write_message(msg->buf, msg->len, name, 0))
return -1;
- argv_array_pushf(&hook_env, "GIT_INDEX_FILE=%s", r->index_file);
- argv_array_push(&hook_env, "GIT_EDITOR=:");
- if (commit)
- ret = run_hook_le(hook_env.argv, "prepare-commit-msg", name,
- "commit", commit, NULL);
- else
- ret = run_hook_le(hook_env.argv, "prepare-commit-msg", name,
- "message", NULL);
- if (ret)
+ if (commit) {
+ arg1 = "commit";
+ arg2 = commit;
+ } else {
+ arg1 = "message";
+ }
+ if (run_commit_hook(0, r->index_file, "prepare-commit-msg", name,
+ arg1, arg2, NULL))
ret = error(_("'prepare-commit-msg' hook failed"));
- argv_array_clear(&hook_env);
return ret;
}
@@ -1403,6 +1400,7 @@ static int try_to_commit(struct repository *r,
goto out;
}
+ run_commit_hook(0, r->index_file, "post-commit", NULL);
if (flags & AMEND_MSG)
commit_post_rewrite(r, current_head, oid);