Junio C Hamano [off-list ref] writes:
Johannes Sixt [off-list ref] writes:
quoted
Am 9/14/2011 1:46, schrieb Junio C Hamano:
quoted
This kind of breakage report was exactly what I was looking for by
merging it early to 'next'. Hopefully no other (function / platform) combo
has such dependencies...
There is! prepare_git_cmd is used from the Windows section in run-command.c.
Therefore, the following hunks of the patch should be reverted.
Thanks; this fix-up will be queued on top.
-- >8 --
Subject: [PATCH] exec_cmd.c: prepare_git_cmd() is sometimes used
Add warning to prevent people from making the same mistake.
Noticed by Johannes Sixt.
Signed-off-by: Junio C Hamano <redacted>
---
exec_cmd.c | 7 ++++++-
exec_cmd.h | 1 +
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/exec_cmd.c b/exec_cmd.c
index 1dddbf4..9c784db 100644
--- a/exec_cmd.c
+++ b/exec_cmd.c
@@ -113,7 +113,12 @@ void setup_path(void)
strbuf_release(&new_path);
}
-static const char **prepare_git_cmd(const char **argv)
+/*
+ * This symbol may be unreferenced from outside this file in some
+ * builds, but run-command.c on Windows does use it. Do not make it
+ * static without checking!
+ */
+const char **prepare_git_cmd(const char **argv)
{
int argc;
const char **nargv;diff --git a/exec_cmd.h b/exec_cmd.h
index f5d2cdd..e2b546b 100644
--- a/exec_cmd.h
+++ b/exec_cmd.h
@@ -5,6 +5,7 @@ extern void git_set_argv_exec_path(const char *exec_path);
extern const char *git_extract_argv0_path(const char *path);
extern const char *git_exec_path(void);
extern void setup_path(void);
+extern const char **prepare_git_cmd(const char **argv);
extern int execv_git_cmd(const char **argv); /* NULL terminated */
extern int execl_git_cmd(const char *cmd, ...);
extern const char *system_path(const char *path);
--
1.7.7.rc1.1.g1e5814