зеркало из https://github.com/microsoft/git.git
Merge branch 'js/runtime-prefix'
* js/runtime-prefix: Avoid multiple PREFIX definitions git_setup_gettext: plug memory leak gettext: avoid initialization if the locale dir is not present
This commit is contained in:
Коммит
71c848bb28
2
Makefile
2
Makefile
|
@ -2284,7 +2284,7 @@ exec-cmd.sp exec-cmd.s exec-cmd.o: EXTRA_CPPFLAGS = \
|
||||||
'-DGIT_EXEC_PATH="$(gitexecdir_SQ)"' \
|
'-DGIT_EXEC_PATH="$(gitexecdir_SQ)"' \
|
||||||
'-DGIT_LOCALE_PATH="$(localedir_relative_SQ)"' \
|
'-DGIT_LOCALE_PATH="$(localedir_relative_SQ)"' \
|
||||||
'-DBINDIR="$(bindir_relative_SQ)"' \
|
'-DBINDIR="$(bindir_relative_SQ)"' \
|
||||||
'-DPREFIX="$(prefix_SQ)"'
|
'-DFALLBACK_RUNTIME_PREFIX="$(prefix_SQ)"'
|
||||||
|
|
||||||
builtin/init-db.sp builtin/init-db.s builtin/init-db.o: GIT-PREFIX
|
builtin/init-db.sp builtin/init-db.s builtin/init-db.o: GIT-PREFIX
|
||||||
builtin/init-db.sp builtin/init-db.s builtin/init-db.o: EXTRA_CPPFLAGS = \
|
builtin/init-db.sp builtin/init-db.s builtin/init-db.o: EXTRA_CPPFLAGS = \
|
||||||
|
|
|
@ -48,7 +48,7 @@ static const char *system_prefix(void)
|
||||||
!(prefix = strip_path_suffix(executable_dirname, GIT_EXEC_PATH)) &&
|
!(prefix = strip_path_suffix(executable_dirname, GIT_EXEC_PATH)) &&
|
||||||
!(prefix = strip_path_suffix(executable_dirname, BINDIR)) &&
|
!(prefix = strip_path_suffix(executable_dirname, BINDIR)) &&
|
||||||
!(prefix = strip_path_suffix(executable_dirname, "git"))) {
|
!(prefix = strip_path_suffix(executable_dirname, "git"))) {
|
||||||
prefix = PREFIX;
|
prefix = FALLBACK_RUNTIME_PREFIX;
|
||||||
trace_printf("RUNTIME_PREFIX requested, "
|
trace_printf("RUNTIME_PREFIX requested, "
|
||||||
"but prefix computation failed. "
|
"but prefix computation failed. "
|
||||||
"Using static fallback '%s'.\n", prefix);
|
"Using static fallback '%s'.\n", prefix);
|
||||||
|
@ -243,7 +243,7 @@ void git_resolve_executable_dir(const char *argv0)
|
||||||
*/
|
*/
|
||||||
static const char *system_prefix(void)
|
static const char *system_prefix(void)
|
||||||
{
|
{
|
||||||
return PREFIX;
|
return FALLBACK_RUNTIME_PREFIX;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
10
gettext.c
10
gettext.c
|
@ -159,15 +159,23 @@ static void init_gettext_charset(const char *domain)
|
||||||
void git_setup_gettext(void)
|
void git_setup_gettext(void)
|
||||||
{
|
{
|
||||||
const char *podir = getenv(GIT_TEXT_DOMAIN_DIR_ENVIRONMENT);
|
const char *podir = getenv(GIT_TEXT_DOMAIN_DIR_ENVIRONMENT);
|
||||||
|
char *p = NULL;
|
||||||
|
|
||||||
if (!podir)
|
if (!podir)
|
||||||
podir = system_path(GIT_LOCALE_PATH);
|
podir = p = system_path(GIT_LOCALE_PATH);
|
||||||
|
|
||||||
|
if (!is_directory(podir)) {
|
||||||
|
free(p);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
bindtextdomain("git", podir);
|
bindtextdomain("git", podir);
|
||||||
setlocale(LC_MESSAGES, "");
|
setlocale(LC_MESSAGES, "");
|
||||||
setlocale(LC_TIME, "");
|
setlocale(LC_TIME, "");
|
||||||
init_gettext_charset("git");
|
init_gettext_charset("git");
|
||||||
textdomain("git");
|
textdomain("git");
|
||||||
|
|
||||||
|
free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* return the number of columns of string 's' in current locale */
|
/* return the number of columns of string 's' in current locale */
|
||||||
|
|
10
sideband.c
10
sideband.c
|
@ -13,7 +13,7 @@
|
||||||
* the remote died unexpectedly. A flush() concludes the stream.
|
* the remote died unexpectedly. A flush() concludes the stream.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define PREFIX "remote: "
|
#define DISPLAY_PREFIX "remote: "
|
||||||
|
|
||||||
#define ANSI_SUFFIX "\033[K"
|
#define ANSI_SUFFIX "\033[K"
|
||||||
#define DUMB_SUFFIX " "
|
#define DUMB_SUFFIX " "
|
||||||
|
@ -49,7 +49,7 @@ int recv_sideband(const char *me, int in_stream, int out)
|
||||||
switch (band) {
|
switch (band) {
|
||||||
case 3:
|
case 3:
|
||||||
strbuf_addf(&outbuf, "%s%s%s", outbuf.len ? "\n" : "",
|
strbuf_addf(&outbuf, "%s%s%s", outbuf.len ? "\n" : "",
|
||||||
PREFIX, buf + 1);
|
DISPLAY_PREFIX, buf + 1);
|
||||||
retval = SIDEBAND_REMOTE_ERROR;
|
retval = SIDEBAND_REMOTE_ERROR;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
|
@ -67,7 +67,7 @@ int recv_sideband(const char *me, int in_stream, int out)
|
||||||
int linelen = brk - b;
|
int linelen = brk - b;
|
||||||
|
|
||||||
if (!outbuf.len)
|
if (!outbuf.len)
|
||||||
strbuf_addstr(&outbuf, PREFIX);
|
strbuf_addstr(&outbuf, DISPLAY_PREFIX);
|
||||||
if (linelen > 0) {
|
if (linelen > 0) {
|
||||||
strbuf_addf(&outbuf, "%.*s%s%c",
|
strbuf_addf(&outbuf, "%.*s%s%c",
|
||||||
linelen, b, suffix, *brk);
|
linelen, b, suffix, *brk);
|
||||||
|
@ -81,8 +81,8 @@ int recv_sideband(const char *me, int in_stream, int out)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (*b)
|
if (*b)
|
||||||
strbuf_addf(&outbuf, "%s%s",
|
strbuf_addf(&outbuf, "%s%s", outbuf.len ?
|
||||||
outbuf.len ? "" : PREFIX, b);
|
"" : DISPLAY_PREFIX, b);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
write_or_die(out, buf + 1, len);
|
write_or_die(out, buf + 1, len);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче