mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-08 21:32:39 +00:00
Don't pull in environ, not always safe. Global variables are bad anyway.
Use execve when explicit environment variables ptr is available. Otherwise just use execv. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28740 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
fcaf345c88
commit
2fafaf1b01
@ -29,8 +29,6 @@
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
|
||||
extern char** environ;
|
||||
|
||||
namespace llvm {
|
||||
using namespace sys;
|
||||
|
||||
@ -147,13 +145,11 @@ Program::ExecuteAndWait(const Path& path,
|
||||
}
|
||||
}
|
||||
|
||||
// Set up the environment
|
||||
char** env = environ;
|
||||
if (envp != 0)
|
||||
env = (char**) envp;
|
||||
|
||||
// Execute!
|
||||
execve (path.c_str(), (char** const)args, env);
|
||||
if (envp != 0)
|
||||
execve (path.c_str(), (char** const)args, (char**)envp);
|
||||
else
|
||||
execv (path.c_str(), (char** const)args);
|
||||
// If the execve() failed, we should exit and let the parent pick up
|
||||
// our non-zero exit status.
|
||||
exit (errno);
|
||||
|
Loading…
x
Reference in New Issue
Block a user