The system_path() function returns a freshly-allocated string. We need to release it. Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx> --- gettext.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gettext.c b/gettext.c index 701355d66e7..7272771c8e4 100644 --- a/gettext.c +++ b/gettext.c @@ -159,18 +159,23 @@ static void init_gettext_charset(const char *domain) void git_setup_gettext(void) { const char *podir = getenv(GIT_TEXT_DOMAIN_DIR_ENVIRONMENT); + char *p = NULL; if (!podir) - podir = system_path(GIT_LOCALE_PATH); + podir = p = system_path(GIT_LOCALE_PATH); - if (!is_directory(podir)) + if (!is_directory(podir)) { + free(p); return; + } bindtextdomain("git", podir); setlocale(LC_MESSAGES, ""); setlocale(LC_TIME, ""); init_gettext_charset("git"); textdomain("git"); + + free(p); } /* return the number of columns of string 's' in current locale */ -- 2.17.0.windows.1.15.gaa56ade3205