diff options
author | Tor Lillqvist <tml@iki.fi> | 2011-05-24 23:57:16 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2011-05-25 02:16:41 +0300 |
commit | b6a9ee9e13f6306bab4c8a23e2331bb6cbc3807b (patch) | |
tree | b3ff05709a2150e94853a9e645e4640055ebf9ec | |
parent | fc84d60d32ba7369ed8df18c794d92ce8c12b617 (diff) |
Don't fork() on iOS, use a new NO_CHILD_PROCESSES flag for that
-rw-r--r-- | sal/osl/unx/makefile.mk | 2 | ||||
-rw-r--r-- | sal/osl/unx/process.c | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/sal/osl/unx/makefile.mk b/sal/osl/unx/makefile.mk index 432dc6441..cb566aeb1 100644 --- a/sal/osl/unx/makefile.mk +++ b/sal/osl/unx/makefile.mk @@ -135,7 +135,7 @@ CFLAGS+=-DSAL_ENABLE_CRASH_REPORT .ENDIF .IF "$(OS)" == "IOS" -CFLAGS+=-DNO_DL_FUNCTIONS +CFLAGS+=-DNO_DL_FUNCTIONS -DNO_CHILD_PROCESSES .ENDIF .INCLUDE : target.mk diff --git a/sal/osl/unx/process.c b/sal/osl/unx/process.c index bc868edad..064b1a0fa 100644 --- a/sal/osl/unx/process.c +++ b/sal/osl/unx/process.c @@ -72,7 +72,7 @@ #define MAX_ARGS 255 #define MAX_ENVS 255 -#if defined(MACOSX) || defined(IORESOURCE_TRANSFER_BSD) || defined(AIX) +#if defined(MACOSX) || defined(IOS) || defined(IORESOURCE_TRANSFER_BSD) || defined(AIX) #define CONTROLLEN (sizeof(struct cmsghdr) + sizeof(int)) #endif @@ -445,6 +445,9 @@ static void ChildStatusProc(void *pData) in our child process */ memcpy(&data, pData, sizeof(data)); +#ifdef NO_CHILD_PROCESSES +#define fork() (errno = EINVAL, -1) +#endif if (socketpair(AF_UNIX, SOCK_STREAM, 0, channel) == -1) status = errno; |