Diffstat (limited to 'noncore/apps/opie-console/procctl.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/opie-console/procctl.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/noncore/apps/opie-console/procctl.cpp b/noncore/apps/opie-console/procctl.cpp index 6839a84..ff6bea8 100644 --- a/noncore/apps/opie-console/procctl.cpp +++ b/noncore/apps/opie-console/procctl.cpp | |||
@@ -1,26 +1,32 @@ | |||
1 | #include <sys/wait.h> | 1 | #include <sys/wait.h> |
2 | 2 | ||
3 | #include <fcntl.h> | 3 | #include <fcntl.h> |
4 | #include <unistd.h> | 4 | #include <unistd.h> |
5 | 5 | ||
6 | #include "procctl.h" | 6 | #include "procctl.h" |
7 | 7 | ||
8 | ProcContainer *ProcCtl::m_last = 0; | 8 | ProcContainer *ProcCtl::m_last = 0; |
9 | ProcCtl* ProcCtl::m_self = 0; | ||
9 | 10 | ||
10 | ProcCtl::ProcCtl() { | 11 | ProcCtl::ProcCtl() { |
11 | signal( SIGCHLD, signal_handler ); | 12 | signal( SIGCHLD, signal_handler ); |
12 | } | 13 | } |
13 | ProcCtl::~ProcCtl() { | 14 | ProcCtl::~ProcCtl() { |
14 | } | 15 | } |
16 | ProcCtl* ProcCtl::self() { | ||
17 | if (!m_self ) { | ||
18 | m_self = new ProcCtl; | ||
19 | } | ||
20 | } | ||
15 | void ProcCtl::add(pid_t pi, int fd ) { | 21 | void ProcCtl::add(pid_t pi, int fd ) { |
16 | ProcContainer * con = new ProcContainer; | 22 | ProcContainer * con = new ProcContainer; |
17 | //memset(con, 0, sizeof(con) ); | 23 | //memset(con, 0, sizeof(con) ); |
18 | con->pid = pi; | 24 | con->pid = pi; |
19 | con->fd = fd; | 25 | con->fd = fd; |
20 | con->status = 0; | 26 | con->status = 0; |
21 | con->prev = m_last; | 27 | con->prev = m_last; |
22 | 28 | ||
23 | m_last = con; | 29 | m_last = con; |
24 | 30 | ||
25 | } | 31 | } |
26 | void ProcCtl::remove( pid_t pi ) { | 32 | void ProcCtl::remove( pid_t pi ) { |