forked from Lainports/freebsd-ports
42 lines
1.2 KiB
Diff
42 lines
1.2 KiB
Diff
--- a/llvm/lib/Support/Unix/Program.inc 2022-09-06 21:14:28.808580000 +0100
|
|
+++ b/llvm/lib/Support/Unix/Program.inc 2022-09-06 21:16:15.007790000 +0100
|
|
@@ -54,10 +54,8 @@
|
|
#define USE_NSGETENVIRON 0
|
|
#endif
|
|
|
|
-#if !USE_NSGETENVIRON
|
|
+#if USE_NSGETENVIRON
|
|
extern char **environ;
|
|
-#else
|
|
-#include <crt_externs.h> // _NSGetEnviron
|
|
#endif
|
|
#endif
|
|
|
|
@@ -240,14 +238,6 @@
|
|
}
|
|
}
|
|
|
|
- if (!Envp)
|
|
-#if !USE_NSGETENVIRON
|
|
- Envp = const_cast<const char **>(environ);
|
|
-#else
|
|
- // environ is missing in dylibs.
|
|
- Envp = const_cast<const char **>(*_NSGetEnviron());
|
|
-#endif
|
|
-
|
|
constexpr int maxRetries = 8;
|
|
int retries = 0;
|
|
pid_t PID;
|
|
@@ -308,11 +298,7 @@
|
|
|
|
// Execute!
|
|
std::string PathStr = std::string(Program);
|
|
- if (Envp != nullptr)
|
|
- execve(PathStr.c_str(), const_cast<char **>(Argv),
|
|
- const_cast<char **>(Envp));
|
|
- else
|
|
- execv(PathStr.c_str(), const_cast<char **>(Argv));
|
|
+ execv(PathStr.c_str(), const_cast<char **>(Argv));
|
|
// If the execve() failed, we should exit. Follow Unix protocol and
|
|
// return 127 if the executable was not found, and 126 otherwise.
|
|
// Use _exit rather than exit so that atexit functions and static
|