From a38989bd5bc850900667ae1b3c0cd43797b066f0 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 29 Oct 2021 14:42:12 -0700 Subject: [PATCH] unsetenv(3) returns int, not void This compatilibity implementation has been returning a wrong type, ever since 731043fd (Add compat/unsetenv.c ., 2006-01-25) added to the system, yet nobody noticed it in the past 16 years, presumably because no code checks failures in their unsetenv() calls. Sigh. For now, make it always succeed. Signed-off-by: Junio C Hamano --- compat/unsetenv.c | 4 +++- git-compat-util.h | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/compat/unsetenv.c b/compat/unsetenv.c index bf5fd7063b..b9d34af613 100644 --- a/compat/unsetenv.c +++ b/compat/unsetenv.c @@ -1,6 +1,6 @@ #include "../git-compat-util.h" -void gitunsetenv (const char *name) +int gitunsetenv(const char *name) { #if !defined(__MINGW32__) extern char **environ; @@ -24,4 +24,6 @@ void gitunsetenv (const char *name) ++dst; } environ[dst] = NULL; + + return 0; } diff --git a/git-compat-util.h b/git-compat-util.h index b46605300a..0f7e369a5d 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -726,7 +726,7 @@ char *gitmkdtemp(char *); #ifdef NO_UNSETENV #define unsetenv gitunsetenv -void gitunsetenv(const char *); +int gitunsetenv(const char *); #endif #ifdef NO_STRCASESTR