diff options
author | Herbert Valerio Riedel <hvr@gnu.org> | 2014-12-06 15:39:12 +0100 |
---|---|---|
committer | Herbert Valerio Riedel <hvr@gnu.org> | 2014-12-06 15:47:36 +0100 |
commit | f24ba78f68b2cbc4f4afadc8dd60fc2935357255 (patch) | |
tree | f0f82b0a48222905cf12da233c5b5b3eb2392cac /System | |
parent | 123fcba7125c3b94ad35c3d7dfe31c715a79a470 (diff) |
Refactor local `execvpe(3)` implementation
The previous code was prone to conflicts with when the platform happens
to expose a `execvpe(3)` implementation in its libc.
This commit renames the internal implementation to `__hsunix_execvpe` as
well as adding an autoconf-detection for the presence of `execvpe(3)`,
in which case `__hsunix_execvpe()` forwards the call to `execvpe(3)`.
Moreover, the code has been cleaned up to remove likely bitrotted CPP
conditionals.
This should fix #22
(This also partially addresses #11 on platforms which have a
libc-provided `execvpe(3)`)
Diffstat (limited to 'System')
-rw-r--r-- | System/Posix/Process/Internals.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/System/Posix/Process/Internals.hs b/System/Posix/Process/Internals.hs index bd3dd31..b320dc7 100644 --- a/System/Posix/Process/Internals.hs +++ b/System/Posix/Process/Internals.hs @@ -30,7 +30,7 @@ data ProcessStatus foreign import ccall unsafe "pPrPr_disableITimers" pPrPr_disableITimers :: IO () -foreign import ccall unsafe "execvpe" +foreign import ccall unsafe "__hsunix_execvpe" c_execvpe :: CString -> Ptr CString -> Ptr CString -> IO CInt decipherWaitStatus :: CInt -> IO ProcessStatus |