* debug.cc (delete_handle): Report on handle value in debugging output.
* pinfo.h (_pinfo::exists): Declare "new" function. (_pinfo::kill): Ditto. * fhandler_termios.cc (tty_min::kill_pgrp): Use _pinfo::exists rather than proc_exists. * pinfo.cc (pinfo::init): Ditto. Don't do a low_priority_sleep(0) when looping to find exec'ed procinfo. (pinfo::release): Be more careful about unmapping and closing. * signal.cc (_pinfo::kill): Rename from kill_worker. Accommodate entry into _pinfo class. (kill0): Use _pinfo::kill rather than kill_worker. (kill_pgrp): Ditto. Use _pinfo::exists rather than proc_exists. * sigproc.cc (_pinfo::exists): Rename from proc_exists. (pid_exists): Use _pinfo::exists rather than proc_exists. (remove_proc): Ditto. * sigproc.h (proc_exists): Delete declaration.
This commit is contained in:
@ -192,16 +192,15 @@ proc_can_be_signalled (_pinfo *p)
|
||||
bool __stdcall
|
||||
pid_exists (pid_t pid)
|
||||
{
|
||||
pinfo p (pid);
|
||||
return proc_exists (p);
|
||||
return pinfo (pid)->exists ();
|
||||
}
|
||||
|
||||
/* Test to determine if a process really exists and is processing signals.
|
||||
*/
|
||||
bool __stdcall
|
||||
proc_exists (_pinfo *p)
|
||||
_pinfo::exists ()
|
||||
{
|
||||
return p && !(p->process_state & PID_EXITED);
|
||||
return this && !(process_state & PID_EXITED);
|
||||
}
|
||||
|
||||
/* Return true if this is one of our children, false otherwise. */
|
||||
@ -847,7 +846,7 @@ out:
|
||||
static bool __stdcall
|
||||
remove_proc (int ci)
|
||||
{
|
||||
if (proc_exists (procs[ci]))
|
||||
if (procs[ci]->exists ())
|
||||
return true;
|
||||
|
||||
sigproc_printf ("removing procs[%d], pid %d, nprocs %d", ci, procs[ci]->pid,
|
||||
|
Reference in New Issue
Block a user