diff options
Diffstat (limited to 'dxr3device.c')
-rw-r--r-- | dxr3device.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/dxr3device.c b/dxr3device.c index b42ed7f..d560496 100644 --- a/dxr3device.c +++ b/dxr3device.c @@ -276,6 +276,17 @@ void cDxr3Device::StillPicture(const uchar *Data, int Length) // ================================== bool cDxr3Device::Poll(cPoller &Poller, int TimeoutMs) { + if ((m_DemuxDevice.GetDemuxMode() == DXR3_DEMUX_TRICK_MODE && + m_DemuxDevice.GetTrickState() == DXR3_FREEZE) || + cDxr3Interface::Instance().IsExternalReleased()) + { +#if VDRVERSNUM >= 10314 + cCondWait::SleepMs(TimeoutMs); +#else + usleep(TimeoutMs * 1000); +#endif + return false; + } return m_DemuxDevice.Poll(TimeoutMs); // Poller.Poll(TimeoutMs); } |