version 1.4, 2015/06/25 17:53:50
|
version 1.6, 2019/12/30 18:11:16
|
Line 49 SUCH DAMAGE.
|
Line 49 SUCH DAMAGE.
|
extern char **environ; |
extern char **environ; |
|
|
pio_pid_t pio_pidlist = SLIST_HEAD_INITIALIZER(pio_pidlist); |
pio_pid_t pio_pidlist = SLIST_HEAD_INITIALIZER(pio_pidlist); |
|
#ifdef HAVE_LIBPTHREAD |
static pthread_mutex_t pidlist_mutex = PTHREAD_MUTEX_INITIALIZER; |
static pthread_mutex_t pidlist_mutex = PTHREAD_MUTEX_INITIALIZER; |
|
|
#define THREAD_LOCK() if (__isthreaded) pthread_mutex_lock(&pidlist_mutex) | #define THREAD_LOCK() pthread_mutex_lock(&pidlist_mutex) |
#define THREAD_UNLOCK() if (__isthreaded) pthread_mutex_unlock(&pidlist_mutex) | #define THREAD_UNLOCK() pthread_mutex_unlock(&pidlist_mutex) |
| #else |
| #define THREAD_LOCK() |
| #define THREAD_UNLOCK() |
| #endif |
|
|
|
|
/* |
/* |
* e_popen() - ELWIX replacement of standard popen |
* e_popen() - ELWIX replacement of standard popen |
* |
* |
Line 231 e_pclose(int iop)
|
Line 235 e_pclose(int iop)
|
#endif |
#endif |
{ |
{ |
struct tagPIOPID *cur, *last = NULL; |
struct tagPIOPID *cur, *last = NULL; |
int pstat; | int pstat = 0; |
pid_t pid; |
pid_t pid; |
|
|
if (!iop) |
if (!iop) |