summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2017-01-30 13:28:28 +0100
committerJunio C Hamano <gitster@pobox.com>2017-01-30 08:49:43 -0800
commit235be51fbecbbdaafd48f762e808c55861e02850 (patch)
tree18eaad290ad2197ff4ce0a9e60ed93f4b249f1e3
parentad36dc8b4b165bf9eb3576b42a241164e312d48c (diff)
downloadgit-js/mingw-hooks-with-exe-suffix.tar.gz
mingw: allow hooks to be .exe filesjs/mingw-hooks-with-exe-suffix
Executable files in Windows need to have the extension '.exe', otherwise they do not work. Extend the hooks to not just look at the hard coded names, but also at the names extended by the custom STRIP_EXTENSION, which is defined as '.exe' in Windows. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--run-command.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/run-command.c b/run-command.c
index ca905a9e80..79780a4ab2 100644
--- a/run-command.c
+++ b/run-command.c
@@ -852,8 +852,14 @@ const char *find_hook(const char *name)
strbuf_reset(&path);
strbuf_git_path(&path, "hooks/%s", name);
- if (access(path.buf, X_OK) < 0)
+ if (access(path.buf, X_OK) < 0) {
+#ifdef STRIP_EXTENSION
+ strbuf_addstr(&path, STRIP_EXTENSION);
+ if (access(path.buf, X_OK) >= 0)
+ return path.buf;
+#endif
return NULL;
+ }
return path.buf;
}