diff options
author | Christopher Faylor <me@cgf.cx> | 2002-11-29 07:05:26 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2002-11-29 07:05:26 +0000 |
commit | 883bbc647820b396ff6929ae4d3cda329981a093 (patch) | |
tree | 9870d78924f4df51a52be1100d9ec93c938417f3 /winsup/cygwin/pinfo.h | |
parent | c0b813e5003809f9d93e3e1b646cb6c9114fe364 (diff) | |
download | cygnal-883bbc647820b396ff6929ae4d3cda329981a093.tar.gz cygnal-883bbc647820b396ff6929ae4d3cda329981a093.tar.bz2 cygnal-883bbc647820b396ff6929ae4d3cda329981a093.zip |
* pinfo.h (winpids::set): Renamed from init.
(winpids::init): New declaration.
(winpids::cs): Ditto.
(winpids::winpids): Use set rather than init.
* external.cc (fillout_pinfo): Ditto.
* dcrt0.cc (dll_crt0_1): Call winpids::init.
* pinfo.cc (winpids::set): Renamed from init. Wrap calls in critical section.
(winpids::init): New function.
(winpids::cs): Define.
Diffstat (limited to 'winsup/cygwin/pinfo.h')
-rw-r--r-- | winsup/cygwin/pinfo.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/winsup/cygwin/pinfo.h b/winsup/cygwin/pinfo.h index fe36b5a27..829a2c1ba 100644 --- a/winsup/cygwin/pinfo.h +++ b/winsup/cygwin/pinfo.h @@ -203,17 +203,19 @@ class winpids DWORD enumNT (bool winpid); DWORD enum9x (bool winpid); void add (DWORD& nelem, bool, DWORD pid); + static CRITICAL_SECTION cs; public: DWORD npids; inline void reset () { npids = 0; release (); } - void init (bool winpid); + void set (bool winpid); winpids (int): enum_processes (&winpids::enum_init) { reset (); } winpids (): pidlist (NULL), npidlist (0), pinfolist (NULL), - enum_processes (&winpids::enum_init), npids (0) { init (0); } + enum_processes (&winpids::enum_init), npids (0) { set (0); } inline DWORD& winpid (int i) const {return pidlist[i];} inline _pinfo *operator [] (int i) const {return (_pinfo *) pinfolist[i];} ~winpids (); void release (); + static void init (); }; extern __inline pid_t |