consistently use the internal name __environ for environ
patch by Jens Gustedt. previously, the intended policy was to use __environ in code that must conform to the ISO C namespace requirements, and environ elsewhere. this policy was not followed in practice anyway, making things confusing. on top of that, Jens reported that certain combinations of link-time optimization options were breaking with the inconsistent references; this seems to be a compiler or linker bug, but having it go away is a nice side effect of the changes made here.
This commit is contained in:
parent
cac872957e
commit
23ccb80fcb
3 changed files with 4 additions and 5 deletions
|
|
@ -4,7 +4,7 @@
|
|||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
|
||||
extern char **environ;
|
||||
extern char **__environ;
|
||||
|
||||
int __execvpe(const char *file, char *const argv[], char *const envp[])
|
||||
{
|
||||
|
|
@ -45,5 +45,5 @@ int __execvpe(const char *file, char *const argv[], char *const envp[])
|
|||
|
||||
int execvp(const char *file, char *const argv[])
|
||||
{
|
||||
return __execvpe(file, argv, environ);
|
||||
return __execvpe(file, argv, __environ);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue