eTimer *disable;
void closeFrontend()
{
- if (!m_inuse)
- m_frontend->closeFrontend();
+ if (!m_inuse && m_frontend->closeFrontend()) // frontend busy
+ disable->start(60000, true); // retry close in 60secs
}
public:
eDVBRegisteredFrontend(eDVBFrontend *fe, iDVBAdapter *adap)
/* iDVBPVRChannel */
RESULT playFile(const char *file);
RESULT getLength(pts_t &len);
- RESULT getCurrentPosition(iDVBDemux *decoding_demux, pts_t &pos);
+ RESULT getCurrentPosition(iDVBDemux *decoding_demux, pts_t &pos, int mode);
RESULT seekTo(iDVBDemux *decoding_demux, int relative, pts_t &pts);
/* seeking to relative positions won't work -
there is an unknown amount of buffers in between */