| 9 |  | #define _RAD_PROCESS_H_ | 
| 10 |  |  | 
| 11 |  | #include  <errno.h> | 
| 12 | + | #include <stdio.h> | 
| 13 |  | #ifdef _WIN32 | 
| 14 |  | #include <windows.h> /* DWORD etc. */ | 
| 15 | < | #include <stdio.h> | 
| 15 | < | typedef DWORD pid_t; | 
| 15 | > | typedef DWORD RT_PID; | 
| 16 |  | #include <process.h> /* getpid() and others */ | 
| 17 | – | #define nice(inc) win_nice(inc) | 
| 18 | – |  | 
| 19 | – | #ifdef __cplusplus | 
| 20 | – | extern "C" { | 
| 21 | – | #endif | 
| 22 | – | extern FILE *win_popen(char *command, char *type); | 
| 23 | – | extern int win_pclose(FILE *p); | 
| 24 | – | #ifdef __cplusplus | 
| 25 | – | } | 
| 26 | – | #endif | 
| 27 | – |  | 
| 28 | – | #define popen(cmd,mode) win_popen(cmd,mode) | 
| 29 | – | #define pclose(p) win_pclose(p) | 
| 17 |  | #else | 
| 18 |  | #include <sys/param.h> | 
| 19 | + | #include <sys/types.h> | 
| 20 | + | typedef pid_t RT_PID; | 
| 21 |  | #endif | 
| 22 |  |  | 
| 23 |  | #include "paths.h" | 
| 31 |  |  | 
| 32 |  | This means that we shouldn't rely on PIDs and file descriptors | 
| 33 |  | being the same type, so we have to describe processes with a struct, | 
| 34 | < | instead of the original int[3]. To keep things simple, we typedef | 
| 35 | < | the posix pid_t on those systems that don't have it already. | 
| 34 | > | instead of the original int[3]. For that purpose, we typedef a | 
| 35 | > | platform independent RT_PID. | 
| 36 |  | */ | 
| 37 |  |  | 
| 38 |  |  | 
| 52 |  | int r; /* read handle */ | 
| 53 |  | int w; /* write handle */ | 
| 54 |  | int running; /* doing something */ | 
| 55 | < | pid_t pid; /* process ID */ | 
| 55 | > | RT_PID pid; /* process ID */ | 
| 56 |  | } SUBPROC; | 
| 57 |  |  | 
| 58 |  | #define SP_INACTIVE {-1,-1,0,0} /* for static initializations */ | 
| 65 |  |  | 
| 66 |  | #ifdef _WIN32 | 
| 67 |  | /* any non-negative increment will send the process to IDLE_PRIORITY_CLASS. */ | 
| 68 | + | extern int win_kill(RT_PID pid, int sig /* ignored */); | 
| 69 |  | extern int win_nice(int inc); | 
| 70 |  | #endif | 
| 71 |  |  |