ePtr<eConnection> eDVBCAService::m_chanAddedConn;
eDVBCAService::eDVBCAService()
- :m_sn(0), m_prev_build_hash(0), m_sendstate(0), m_retryTimer(eApp)
+ : m_prev_build_hash(0), m_sendstate(0), m_retryTimer(eApp)
{
memset(m_used_demux, 0xFF, sizeof(m_used_demux));
CONNECT(m_retryTimer.timeout, eDVBCAService::sendCAPMT);
{
eDebug("[eDVBCAService] free service %s", m_service.toString().c_str());
::close(m_sock);
- delete m_sn;
}
// begin static methods
void eDVBCAService::Connect()
{
- if (m_sn) {
- delete m_sn;
- m_sn=0;
- }
+ m_sn=0;
memset(&m_servaddr, 0, sizeof(struct sockaddr_un));
m_servaddr.sun_family = AF_UNIX;
strcpy(m_servaddr.sun_path, "/tmp/camd.socket");
int val=1;
fcntl(m_sock, F_SETFL, O_NONBLOCK);
setsockopt(m_sock, SOL_SOCKET, SO_REUSEADDR, &val, 4);
- m_sn = new eSocketNotifier(eApp, m_sock,
+ m_sn = eSocketNotifier::create(eApp, m_sock,
eSocketNotifier::Read|eSocketNotifier::Priority|eSocketNotifier::Error|eSocketNotifier::Hungup);
CONNECT(m_sn->activated, eDVBCAService::socketCB);