X-Git-Url: https://ruderich.org/simon/gitweb/?p=coloredstderr%2Fcoloredstderr.git;a=blobdiff_plain;f=src%2Fcoloredstderr.c;h=a78fdd9a2e7ed377b36e56555d2de77f9fe1960a;hp=15581a622c30f15d437cd982244d88498ac45803;hb=afa1ef98fe940719c7085e93643185c6de94d300;hpb=436c2f894ce5213d297658c03f38e41d787e6cee diff --git a/src/coloredstderr.c b/src/coloredstderr.c index 15581a6..a78fdd9 100644 --- a/src/coloredstderr.c +++ b/src/coloredstderr.c @@ -646,10 +646,16 @@ HOOK_FUNC_DEF2(int, execvp, char const *, file, char * const *, argv) { #ifdef HAVE_EXECVPE extern char **environ; int execvpe(char const *file, char * const argv[], char * const envp[]) { + int result; + char **old_environ = environ; + /* Fake the environment so we can reuse execvp(). */ environ = (char **)envp; /* execvp() updates the environment. */ - return execvp(file, argv); + result = execvp(file, argv); + + environ = old_environ; + return result; } #endif