Fixed a possible high CPU load when pausing replay

This commit is contained in:
Klaus Schmidinger 2012-05-06 11:04:07 +02:00
parent 97e242d1b5
commit 353233a27e
3 changed files with 5 additions and 3 deletions

View File

@ -1310,6 +1310,7 @@ Reinhard Nissl <rnissl@gmx.de>
for making cEITScanner process new transponders before old ones, to make sure
transponder changes are recognized
for helping to debug switching into time shift mode when pausing live video
for fixing a possible high CPU load when pausing replay
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the

View File

@ -7052,7 +7052,7 @@ Video Disk Recorder Revision History
- Fixed handling IDLEPRIORITY in cDvbDevice::ProvidesChannel() (thanks to Frank
Schmirler).
2012-04-28: Version 1.7.28
2012-05-06: Version 1.7.28
- Fixed cPixmapMemory::DrawEllipse() for quadrants -1 and -4.
- Fixed getting the maximum short channel name length in case there are no short names
@ -7093,3 +7093,4 @@ Video Disk Recorder Revision History
true to get the current player control even if it is hidden.
- The new functions cControl::GetRecording() and cControl::GetHeader() can be used
to retrieve information about what the current player is playing.
- Fixed a possible high CPU load when pausing replay (thanks to Reinhard Nissl).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbplayer.c 2.26 2012/03/12 14:36:55 kls Exp $
* $Id: dvbplayer.c 2.27 2012/05/06 11:02:35 kls Exp $
*/
#include "dvbplayer.h"
@ -408,7 +408,7 @@ void cDvbPlayer::Action(void)
Goto(0, true);
while (Running()) {
if (WaitingForData)
nonBlockingFileReader->WaitForDataMs(3); // this keeps the CPU load low, but reacts immediately on new data
WaitingForData = !nonBlockingFileReader->WaitForDataMs(3); // this keeps the CPU load low, but reacts immediately on new data
else if (Sleep) {
cPoller Poller;
DevicePoll(Poller, 10);