X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=lib%2Fbase%2Fmessage.h;h=6e9eb07c3629c48b024da8539267a7882ade7bd0;hb=126e93d0f58bf3cadfe628549c4cdb7c0cd0167e;hp=038fd55dba642a3d5b168ab1abf43f32c3b577d5;hpb=4ca6dd275393344b9a27cfb2e5a755a4d74a414f;p=vuplus_dvbapp diff --git a/lib/base/message.h b/lib/base/message.h index 038fd55..6e9eb07 100644 --- a/lib/base/message.h +++ b/lib/base/message.h @@ -39,7 +39,7 @@ protected: template class eFixedMessagePump: private eMessagePump, public Object { - eSocketNotifier *sn; + ePtr sn; void do_recv(int) { T msg; @@ -54,15 +54,10 @@ public: } eFixedMessagePump(eMainloop *context, int mt): eMessagePump(mt) { - sn=new eSocketNotifier(context, getOutputFD(), eSocketNotifier::Read); + sn=eSocketNotifier::create(context, getOutputFD(), eSocketNotifier::Read); CONNECT(sn->activated, eFixedMessagePump::do_recv); sn->start(); } - ~eFixedMessagePump() - { - delete sn; - sn=0; - } void start() { if (sn) sn->start(); } void stop() { if (sn) sn->stop(); } }; @@ -70,7 +65,7 @@ public: class ePythonMessagePump: public eMessagePump, public Object { - eSocketNotifier *sn; + ePtr sn; void do_recv(int) { int msg; @@ -86,17 +81,10 @@ public: ePythonMessagePump() :eMessagePump(1) { - eDebug("add python messagepump %p", this); - sn=new eSocketNotifier(eApp, getOutputFD(), eSocketNotifier::Read); + sn=eSocketNotifier::create(eApp, getOutputFD(), eSocketNotifier::Read); CONNECT(sn->activated, ePythonMessagePump::do_recv); sn->start(); } - ~ePythonMessagePump() - { - eDebug("remove python messagepump %p", this); - delete sn; - sn=0; - } void start() { if (sn) sn->start(); } void stop() { if (sn) sn->stop(); } };