Brad King
07665de038
BUG: Handle case when select() lies
...
According to "man select" on Linux it is possible that select() lies
about data being ready on a pipe in some subtle cases. We deal with
this by switching to non-blocking i/o and checking for EAGAIN. See
issue #7180 .
2008-08-20 09:57:09 -04:00
Mathieu Malaterre
7499bb250d
ENH: all ctype function have the same issue: char can be signed or unsigned, since isspace only deal with >=0 value (except EOF) one has to first cast it to unsigned char
2008-05-13 05:18:51 -04:00
Bill Lorensen
614b1ab358
COMP: warning, isprint and isspace take int args.
2008-05-12 12:01:09 -04:00
Mathieu Malaterre
f410daffec
STYLE: minor comments
2008-04-02 08:36:51 -04:00
Brad King
1c2ffbb5bc
BUG: Fix hang in Process_Kill on OS X caused by an OS bug in which a pipe read end cannot be closed if the pipe write end is open, the pipe is full, and another process is blocking waiting to write. Work around the problem by killing the children before closing the pipes.
2008-01-10 18:32:38 -05:00
Brad King
9dec9a0c3b
COMP: Fix for platforms that do not have siginfo on their signal handlers.
2007-06-27 11:39:16 -04:00
Brad King
01c7db07c3
BUG: Do not send both SIGSTOP and SIGKILL when killing a process. The SIGSTOP seems to be able to block the SIGKILL occasionally. Also the SIGKILL is sufficient since the process table entry will still exist until it is reaped with waitpid.
2007-05-16 13:10:45 -04:00
Brad King
aa4d7847ee
COMP: Fix code-not-reached warnings for SunCC.
2007-05-03 13:03:13 -04:00
Bill Hoffman
6b7bf34341
COMP: remove warning
2006-12-05 09:02:32 -05:00
Bill Hoffman
1513773310
ENH: fix build error on IRIX
2006-12-05 08:39:22 -05:00
Brad King
de8ffcaef4
ENH: Changes based on patch from Ryan C. Gordon to enable process execution on BeOS. There seems to be no way to implement it without polling (or threads).
2006-12-04 14:42:47 -05:00
Brad King
40adb2ce03
ENH: Adding tests KWSYS_C_HAS_PTRDIFF_T and KWSYS_C_HAS_SSIZE_T to help ProcessUNIX.c build everywhere without warnings.
2006-10-04 17:27:17 -04:00
Brad King
48ee381e6b
BUG: Need to initialize to not use native pipes.
2006-10-03 10:26:32 -04:00
Brad King
6eef6638a5
ENH: Added Process_SetPipeNative method to allow user code to override the pipes connected to the child pipeline.
2006-10-03 09:10:03 -04:00
Brad King
9b2b2b5f1b
COMP: Use SA_RESTART only if it is defined for the current platform. This partially addresses bug#3556.
2006-08-01 14:28:03 -04:00
Brad King
6438bec4c9
ENH: Added Option_Verbatim to run whole command lines directly.
2006-06-15 14:40:42 -04:00
Brad King
9b74e597be
BUG: Do not leak global table of processes.
2006-05-24 10:13:18 -04:00
Brad King
35334d01cd
ENH: Re-enabling SIGCHLD handling implementation with a fix for Cygwin.
2006-05-23 11:48:15 -04:00
Brad King
29b75dda97
BUG: Reverting previous change until it can be fixed on Cygwin.
2006-05-22 15:11:42 -04:00
Brad King
0d594a4538
ENH: Implemented handling of SIGCHLD to detect the termination of immediate children. This allows grandchildren to remain running after the children exit.
2006-05-21 10:26:28 -04:00
Brad King
3dd70af5a0
ENH: Enabling process tree killing on Cygwin.
2006-05-20 18:50:27 -04:00
Brad King
bde71e9668
ENH: Enabled process tree killing on AIX.
2006-03-08 13:06:46 -05:00
Brad King
6fb7bac013
ENH: Enabled process tree killing on the SGI.
2006-03-08 12:42:59 -05:00
Brad King
95f86d5d6f
ENH: Enabled process tree killing for FreeBSD and Sun.
2006-03-08 12:36:14 -05:00
Brad King
17d79233ff
ENH: Enabled process tree killing on HP-UX.
2006-03-08 12:12:37 -05:00
Brad King
c31c18bb9c
BUG: Do not leak ps FILE when the process starts but reading the header fails.
2006-03-08 11:57:41 -05:00
Brad King
3c39accee9
ENH: Added implementation of process tree killing that runs "ps" to traverse the tree.
2006-03-08 11:38:51 -05:00
Brad King
8489a94101
BUG: When more than one command is given and one of them fails to start and the rest are killed, do not forget to reap the killed children.
2005-12-31 12:59:31 -05:00
Brad King
e3876623f6
STYLE: Documented reference to "man select_tut".
2005-11-16 11:39:43 -05:00
Brad King
9fd4560ba2
BUG: Fixed polling capability of WaitForData.
2005-06-17 13:57:27 -04:00
Brad King
26f82b064c
ENH: Removing previous debug code.
2005-05-16 13:42:23 -04:00
Brad King
b45071cc60
ENH: Adding debugging code for freebsd.
2005-05-13 14:44:20 -04:00
Brad King
a4aefb4faa
BUG: struct timeval uses unsigned types on at least one platform (QNX). Alot of the time logic assumes a signed type. Switch to using a signed representation that is converted to the native representation only for system calls.
2005-05-10 16:36:49 -04:00
Brad King
3336b74c01
COMP: Added initializer to avoid warning. It is not really needed, though.
2005-05-05 09:05:15 -04:00
Brad King
8567e7d0bc
BUG: Do not close stdout/stderr pipes in parent if they are shared.
2005-04-21 16:05:09 -04:00
Brad King
c98bd6249a
BUG: When killing a child all the pipe read ends should be closed. This will allow a child that is blocking while waiting to write to the pipe to wake up and receive the kill signal properly on cygwin.
2005-04-19 11:52:25 -04:00
Brad King
caf54b2093
COMP: Adding work-around for CMake dependency scanning limitation. Any configured header included by KWSYS_HEADER() in a .c or .cxx file in kwsys itself must use this hack to get dependencies.
2005-04-13 16:46:09 -04:00
Andy Cedilnik
4a390c174c
ENH: Do kwsys testing as part of cmake testing, command line arguments are not experimental and add simple test for systemtools
2005-04-13 13:57:24 -04:00
Andy Cedilnik
588653c4e8
COMP: Remove warnings about shadow variables
2005-02-27 17:36:00 -05:00
Brad King
5701282e98
ERR: Fixed missing return warning. Code was not reachable anyway.
2004-07-09 11:49:04 -04:00
Brad King
55c1c3b33f
BUG: Do not disown if process has already been killed or the timeout expired. Also need to call kwsysProcessCleanup to disown.
2004-07-07 17:46:34 -04:00
Brad King
ae28d93a72
ENH: Added kwsysProcess_Disown an kwsysProcess_Option_Detach to allow detached processes to be created. Currently implemented only on UNIX.
2004-07-07 17:27:50 -04:00
Brad King
6df06682a5
ERR: Using KWSYSPE_PIPE_BUFFER_SIZE in place of separate bufferSize constant for consistency.
2004-07-07 13:03:56 -04:00
Bill Hoffman
bbc9e4a9dc
no c++ comments in c
2004-07-04 00:05:04 -04:00
Bill Hoffman
4772d6b649
fix for hp build
2004-07-03 12:00:41 -04:00
Brad King
e6145d6878
BUG#392: Implementation of process tree killing for systems with /proc filesystem.
2004-07-02 16:39:29 -04:00
Brad King
aeea4895a5
ERR: SIGSEGV == SIGBUS on BeOS.
2004-03-12 14:43:32 -05:00
Brad King
9651c9d996
ERR: Fixed function prototypes with zero arguments to be C-style.
2004-01-22 14:44:44 -05:00
Andy Cedilnik
9cf5bb4bb0
BUG: If working directory does not exists, exit
2004-01-22 11:16:43 -05:00
Andy Cedilnik
d609e037b9
BUG: Fix valgrind error. If working directory is not set do not do chdir
2004-01-21 13:38:09 -05:00