Reverted the change in cCondWait::SleepMs() because of a possible lockup

This commit is contained in:
Klaus Schmidinger
2025-07-09 16:13:43 +02:00
parent 7fed1720e3
commit 9a8639bd61
3 changed files with 5 additions and 2 deletions

View File

@@ -2971,6 +2971,7 @@ Johann Friedrichs <johann.friedrichs@web.de>
for reporting a bug in handling the tfRecording flag in the SVDRP commands MODT and UPDT
for adding a missing '-D' to the 'plugins' target of the Makefile
for adding code for the 'qks' audio track
for reporting a possible lockup in cCondWait::SleepMs()
Timo Helkio <timolavi@mbnet.fi>
for reporting a hangup when replaying a TS recording with subtitles activated

View File

@@ -10166,3 +10166,5 @@ Video Disk Recorder Revision History
APIVERSNUM is now 30009.
- Fixed the stop time of repeating timers in case of DST change (thanks to Markus Ehrnsperger).
- Fixed expiring VPS timers in case the event has not yet startet after its announced end time.
- Reverted the change in cCondWait::SleepMs() because of a possible lockup (reported by Johann
Friedrichs).

View File

@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: thread.c 5.4 2025/06/17 20:32:06 kls Exp $
* $Id: thread.c 5.5 2025/07/09 16:13:43 kls Exp $
*/
#include "thread.h"
@@ -73,7 +73,7 @@ cCondWait::~cCondWait()
void cCondWait::SleepMs(int TimeoutMs)
{
cCondWait w;
w.Wait(TimeoutMs);
w.Wait(max(TimeoutMs, 3)); // making sure the time is >2ms to avoid a possible busy wait
}
bool cCondWait::Wait(int TimeoutMs)