summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/procctl.cpp6
-rw-r--r--noncore/apps/opie-console/procctl.h5
2 files changed, 10 insertions, 1 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
@@ -6,12 +6,18 @@
6#include "procctl.h" 6#include "procctl.h"
7 7
8ProcContainer *ProcCtl::m_last = 0; 8ProcContainer *ProcCtl::m_last = 0;
9ProcCtl* ProcCtl::m_self = 0;
9 10
10ProcCtl::ProcCtl() { 11ProcCtl::ProcCtl() {
11 signal( SIGCHLD, signal_handler ); 12 signal( SIGCHLD, signal_handler );
12} 13}
13ProcCtl::~ProcCtl() { 14ProcCtl::~ProcCtl() {
14} 15}
16ProcCtl* ProcCtl::self() {
17 if (!m_self ) {
18 m_self = new ProcCtl;
19 }
20}
15void ProcCtl::add(pid_t pi, int fd ) { 21void 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) );
diff --git a/noncore/apps/opie-console/procctl.h b/noncore/apps/opie-console/procctl.h
index e2161f3..5e96423 100644
--- a/noncore/apps/opie-console/procctl.h
+++ b/noncore/apps/opie-console/procctl.h
@@ -17,10 +17,12 @@ struct ProcContainer {
17}; 17};
18 18
19class ProcCtl { 19class ProcCtl {
20public: 20private:
21 ProcCtl(); 21 ProcCtl();
22public:
22 ~ProcCtl(); 23 ~ProcCtl();
23 24
25 ProcCtl* self();
24 int status(pid_t)const; 26 int status(pid_t)const;
25 void add( pid_t, int fd ); 27 void add( pid_t, int fd );
26 void remove( pid_t ); 28 void remove( pid_t );
@@ -28,6 +30,7 @@ public:
28private: 30private:
29 static void signal_handler(int); 31 static void signal_handler(int);
30 static ProcContainer* m_last; 32 static ProcContainer* m_last;
33 static ProcCtl* m_self;
31}; 34};
32 35
33#endif 36#endif