Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
MacOS: Fix environ not being found
- Loading branch information
Showing
with
7 additions
and
1 deletion.
-
+7
−1
src/porting.cpp
|
@@ -49,6 +49,11 @@ with this program; if not, write to the Free Software Foundation, Inc., |
|
|
#if defined(__ANDROID__) |
|
|
#include "porting_android.h" |
|
|
#endif |
|
|
#if defined(__APPLE__) |
|
|
// For _NSGetEnviron() |
|
|
// Related: https://gitlab.haskell.org/ghc/ghc/issues/2458 |
|
|
#include <crt_externs.h> |
|
|
#endif |
|
|
|
|
|
#include "config.h" |
|
|
#include "debug.h" |
|
@@ -718,7 +723,8 @@ bool openURL(const std::string &url) |
|
|
return true; |
|
|
#elif defined(__APPLE__) |
|
|
const char *argv[] = {"open", url.c_str(), NULL}; |
|
|
return posix_spawnp(NULL, "open", NULL, NULL, (char**)argv, environ) == 0; |
|
|
return posix_spawnp(NULL, "open", NULL, NULL, (char**)argv, |
|
|
(*_NSGetEnviron())) == 0; |
|
|
#else |
|
|
const char *argv[] = {"xdg-open", url.c_str(), NULL}; |
|
|
return posix_spawnp(NULL, "xdg-open", NULL, NULL, (char**)argv, environ) == 0; |
|
|