mirror of
https://github.com/git/git.git
synced 2024-10-31 22:37:54 +01:00
Merge branch 'jk/system-path-cleanup' into maint
Code clean-up. * jk/system-path-cleanup: git_extract_argv0_path: do nothing without RUNTIME_PREFIX system_path: move RUNTIME_PREFIX to a sub-function
This commit is contained in:
commit
110a642801
1 changed files with 28 additions and 14 deletions
42
exec_cmd.c
42
exec_cmd.c
|
@ -5,21 +5,14 @@
|
|||
#define MAX_ARGS 32
|
||||
|
||||
static const char *argv_exec_path;
|
||||
|
||||
#ifdef RUNTIME_PREFIX
|
||||
static const char *argv0_path;
|
||||
|
||||
char *system_path(const char *path)
|
||||
static const char *system_prefix(void)
|
||||
{
|
||||
#ifdef RUNTIME_PREFIX
|
||||
static const char *prefix;
|
||||
#else
|
||||
static const char *prefix = PREFIX;
|
||||
#endif
|
||||
struct strbuf d = STRBUF_INIT;
|
||||
|
||||
if (is_absolute_path(path))
|
||||
return xstrdup(path);
|
||||
|
||||
#ifdef RUNTIME_PREFIX
|
||||
assert(argv0_path);
|
||||
assert(is_absolute_path(argv0_path));
|
||||
|
||||
|
@ -32,10 +25,7 @@ char *system_path(const char *path)
|
|||
"but prefix computation failed. "
|
||||
"Using static fallback '%s'.\n", prefix);
|
||||
}
|
||||
#endif
|
||||
|
||||
strbuf_addf(&d, "%s/%s", prefix, path);
|
||||
return strbuf_detach(&d, NULL);
|
||||
return prefix;
|
||||
}
|
||||
|
||||
void git_extract_argv0_path(const char *argv0)
|
||||
|
@ -51,6 +41,30 @@ void git_extract_argv0_path(const char *argv0)
|
|||
argv0_path = xstrndup(argv0, slash - argv0);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
static const char *system_prefix(void)
|
||||
{
|
||||
return PREFIX;
|
||||
}
|
||||
|
||||
void git_extract_argv0_path(const char *argv0)
|
||||
{
|
||||
}
|
||||
|
||||
#endif /* RUNTIME_PREFIX */
|
||||
|
||||
char *system_path(const char *path)
|
||||
{
|
||||
struct strbuf d = STRBUF_INIT;
|
||||
|
||||
if (is_absolute_path(path))
|
||||
return xstrdup(path);
|
||||
|
||||
strbuf_addf(&d, "%s/%s", system_prefix(), path);
|
||||
return strbuf_detach(&d, NULL);
|
||||
}
|
||||
|
||||
void git_set_argv_exec_path(const char *exec_path)
|
||||
{
|
||||
argv_exec_path = exec_path;
|
||||
|
|
Loading…
Reference in a new issue