Re: [PATCH 4/9] hook: treat hookdir hook specially
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-07-16 08:59:55
On Thu, Jul 15 2021, Emily Shaffer wrote:
quoted hunk ↗ jump to hunk
Soon, we will allow users to specify hooks using the config. These config-specified hooks may require different child_process options than hook executables in the gitdir. So, let's differentiate between hooks coming from the gitdir and hooks coming from the config. Signed-off-by: Emily Shaffer <redacted> --- hook.c | 3 ++- hook.h | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-)diff --git a/hook.c b/hook.c index 19138a8290..3a588cb055 100644 --- a/hook.c +++ b/hook.c@@ -117,6 +117,7 @@ struct list_head* hook_list(const char* hookname) struct hook *to_add = xmalloc(sizeof(*to_add)); to_add->hook_path = hook_path; to_add->feed_pipe_cb_data = NULL; + to_add->from_hookdir = 1; list_add_tail(&to_add->list, hook_head); }@@ -200,7 +201,7 @@ static int pick_next_hook(struct child_process *cp, cp->dir = hook_cb->options->dir; /* add command */ - if (hook_cb->options->absolute_path) + if (run_me->from_hookdir && hook_cb->options->absolute_path) strvec_push(&cp->args, absolute_path(run_me->hook_path)); else strvec_push(&cp->args, run_me->hook_path);diff --git a/hook.h b/hook.h index 586ddf40bb..60389cd8cd 100644 --- a/hook.h +++ b/hook.h@@ -22,6 +22,8 @@ struct hook { /* The path to the hook */ const char *hook_path; + unsigned from_hookdir : 1; + /* * Use this to keep state for your feed_pipe_fn if you are using * run_hooks_opt.feed_pipe. Otherwise, do not touch it.
The "from_hookdir" looks like it isn't used until 6/9, and maybe the absolute_path change too? In any case this seems like a carried-forward rebase of https://lore.kernel.org/git/20210311021037.3001235-5-emilyshaffer@google.com/ (local) or some version thereof. At this point I tihnk it would be way better to squash this and other such changes that basically add a field to a struct that isn't used yet into whatever commit use/need them.